web前端

二进制流文件的加密

2021-07-07  本文已影响0人  姜治宇

前端的crypto-js库跟node版本的crypto不一样,前者只是实现了部分功能,crypto-js对二进制流加密时有大小限制,超长了会报错。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <input type="file" id="cc">
</body>
</html>
<script src="node_modules/crypto-js/crypto-js.js"></script>

<script>

    console.log(CryptoJS);
    var cc = document.getElementById('cc');
    cc.addEventListener('change',function(e){
        console.log(e.target.files[0]);
        let file = e.target.files[0];
        var fr = new FileReader();
        fr.readAsBinaryString(file);
        fr.onload = function(){
            let res = fr.result;
           
            let code = CryptoJS.SHA512(res);
           
            console.log(code.toString());
        }

    });

</script>
上一篇 下一篇

猜你喜欢

热点阅读