crypto.js是google開發的加密套件,SJCL是斯坦福大學開發的aes加密工具,二者都是js對aes加密算法的實現。
二者的不同之處,首先是對密文是否被篡改的校驗上。SJCL內置並強制使用校驗功能,把校驗碼附加在密文的末尾,而crypto.js提供了各種hmac算法以供選擇,但不強制使用。
再者二者雖然都是aes加密的實現,但支持的模式是不同的。crypto.js支持「ECB、CBC、CFB、CTR、OFB」,而SJCL支持「CCM、GCM、OCB2」。
我依靠grok和gemini做了個網頁加密工具,來對比二者的加密結果。
把玩地址