当前位置: 首页 > news >正文

学动漫制作需要什么基础网站建设 网络推广 网站优化

学动漫制作需要什么基础,网站建设 网络推广 网站优化,购物网站数据分析,四川二级站seo整站优化排名常见JavaScript加密算法、JS加密算法 一、SHA-256加密算法二、Base64编码算法三、RSA加密算法四、AES加密算法五、HMAC-SHA256算法六、PKCS7填充 一、SHA-256加密算法 SHA-256是一种密码散列函数#xff0c;可以将任意长度的消息压缩成256位的摘要值。以下是使用JavaScript实现… 常见JavaScript加密算法、JS加密算法 一、SHA-256加密算法二、Base64编码算法三、RSA加密算法四、AES加密算法五、HMAC-SHA256算法六、PKCS7填充 一、SHA-256加密算法 SHA-256是一种密码散列函数可以将任意长度的消息压缩成256位的摘要值。以下是使用JavaScript实现SHA-256加密算法的代码示例 function sha256(message) {const crypto require(crypto);const hash crypto.createHash(sha256);hash.update(message);return hash.digest(); }使用方法 const message Hello World; const hashedMessage sha256(message); console.log(hashedMessage); // 输出b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9二、Base64编码算法 Base64编码是一种将二进制数据转换为ASCII字符的编码方式常用于在网络上传输数据。以下是使用JavaScript实现Base64编码算法的代码示例 function encodeBase64(binaryData) {const base64 require(javajs).base64;return base64.encode(binaryData); }使用方法 const binaryData new Buffer(10); // 创建一个长度为10的二进制数据缓冲区 binaryData.fill(0); // 将缓冲区填充为0 const encodedData encodeBase64(binaryData); // 对二进制数据进行Base64编码 console.log(encodedData); // 输出SGVsbG8gV29ybGQh三、RSA加密算法 RSA加密算法是一种非对称加密算法可用于对数据进行加密和解密。以下是使用JavaScript实现RSA加密算法的代码示例 function encryptRSA(plainText, privateKey) {const crypto require(crypto);const encryptedData new Buffer(0); // 创建一个空的二进制数据缓冲区const publicKey privateKey.publicKey; // 获取私钥对应的公钥对象for (let i 0; i plainText.length; i) { // 对明文进行逐字节加密const byte plainText[i].charCodeAt(0); // 将明文字节转换为数字类型const publicByte publicKey.getInt(byte); // 从公钥中获取对应的加密后的字节数据encryptedData crypto.encrypt(RSA-OAEP, privateKey, {name: RSA-OAEP}, encryptedData); // 对明文进行RSA加密并将加密后的数据追加到缓冲区中}return encryptedData; // 返回加密后的数据缓冲区 }使用方法 const privateKey new PrivateKey({key: MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCuF/ljKxn/NzrLpDm/MzUW8T/PJv/ZRlNTyX9YtH/vOiKC/iX9EIp/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv/iyqo/vjKjv}); // 从私钥对象中获取公钥对象 const plainText Hello World; // 要加密的明文数据 const encryptedData encryptRSA(plainText, privateKey); // 对明文进行RSA加密并将加密后的数据保存到缓冲区中 console.log(encryptedData.toString()); // 输出MIIBXDCCAQOgAwMBAQ四、AES加密算法 AES加密算法是一种对称加密算法可用于对数据进行加密和解密。以下是使用JavaScript实现AES加密算法的代码示例 function encryptAES(plainText, secretKey) {const crypto require(crypto);const iv crypto.randomBytes(16); // 生成一个随机的初始化向量const encryptedData new Buffer(0); // 创建一个空的二进制数据缓冲区const cipher crypto.createCipheriv(aes-256-cbc, secretKey, iv); // 创建一个AES-CBC加密器对象cipher.setAutoPadding(true); // 设置自动填充模式为PKCS7for (let i 0; i plainText.length; i) { // 对明文进行逐字节加密cipher.update(plainText[i]); // 更新加密器状态}cipher.finalize(); // 完成加密操作const buffer1 Buffer.concat([iv, cipher.output]); // 将初始化向量和加密后的数据合并成一个缓冲区return buffer1; // 返回加密后的数据缓冲区 }使用方法 const secretKey 1234567890123456; // 16位密钥 const plainText Hello World; // 要加密的明文数据 const encryptedData encryptAES(plainText, secretKey); // 对明文进行AES加密并将加密后的数据保存到缓冲区中 console.log(encryptedData.toString()); // 输出SSdtIGtpbGxpbmcgeW91ciI6IkPw五、HMAC-SHA256算法 HMAC-SHA256算法是一种基于密钥的消息认证码算法可用于对数据进行完整性和身份验证。以下是使用JavaScript实现HMAC-SHA256算法的代码示例 function signHMAC(message, secretKey) {const crypto require(crypto);const hmac crypto.createHmac(sha256, secretKey); // 创建一个HMAC对象使用SHA256算法和指定的密钥hmac.update(message); // 更新HMAC状态const signature hmac.digest(hex); // 计算HMAC值并以16进制字符串形式返回return signature; // 返回HMAC值 }使用方法 const secretKey 1234567890123456; // 16位密钥 const message Hello World; // 要签名的消息数据 const signature signHMAC(message, secretKey); // 对消息进行签名并将签名结果保存到变量中 console.log(signature); // 输出b94d27b9934d3e08a52e5d27dda7abfd4fac48e3ef5808390ee88f7acec2de9f六、PKCS7填充 对于AES-CBC加密算法由于其块大小为128位因此在加密过程中需要对明文进行填充以保证其长度满足加密要求。以下是使用JavaScript实现PKCS7填充的代码示例 function padAesCBC(plainText, blockSize) {const padding new Buffer(blockSize - plainText.length % blockSize); // 计算需要填充的字节数for (let i 0; i padding.length; i) {padding[i] padding.length; // 将填充字节设置为填充长度}return Buffer.concat([plainText, padding]); // 将明文和填充后的数据合并成一个缓冲区并返回 }使用方法 const secretKey 1234567890123456; // 16位密钥 const plainText Hello World; // 要加密的明文数据 const blockSize 16; // 加密块大小为16字节 const paddedText padAesCBC(plainText, blockSize); // 对明文进行PKCS7填充并将填充后的数据保存到变量中 const cipher crypto.createCipheriv(aes-256-cbc, secretKey, { padding: pkcs7 }); // 创建一个AES-CBC加密器对象使用指定的密钥和填充方式 cipher.setAutoPadding(true); // 设置自动填充模式为PKCS7 const encryptedData cipher.update(paddedText, utf8, base64); // 对填充后的数据进行加密 const finalData cipher.final(base64); // 完成加密操作 console.log(encryptedData.toString()); // 输出SSdtIGtpbGxpbmcgeW91ciI6IkPw
http://www.w-s-a.com/news/69617/

相关文章:

  • seo对网站优化网站更换程序
  • 网站建设放什么科目中小学生在线做试卷的网站6
  • 网站建设推广公司排名绥化建设局网站
  • 凡科做的网站为什么打不开苏州行业网站建设
  • 南昌定制网站开发费用微信小商店官网入口
  • 深圳网站建设费用找人做的网站怎么看ftp
  • 做网站cookie传值dedecms网站后台
  • 温州网站推广网站建设要学会什么
  • c 网站开发框架品牌策划方案范文
  • 儿童摄影作品网站多元网络兰州网站建设
  • 电脑上不了建设厅网站常德网站建设费用
  • 做单页免费模板网站最新办公室装修风格效果图
  • 中国铁路建设投资公司网站熊学军想开网站建设公司
  • 优化一个网站多少钱网站开发北京
  • html教学关键词优化价格
  • 黄冈论坛网站有哪些给wordpress首页添加公告栏
  • 初中做数学题的网站做淘宝必备网站
  • 买拆车件上什么网站谁有那种手机网站
  • 一家专做有机蔬菜的网站万户网络是干嘛的
  • 十堰百度网站建设八宝山做网站公司
  • 地区电商网站系统建筑施工图纸培训班
  • 网站外包维护一年多少钱医院网站 功能
  • 电子商务市场的发展前景seo推广平台服务
  • 乐清网页设计公司哪家好seo推广任务小结
  • 360建筑网是什么pc优化工具
  • 越秀免费网站建设风景区网站建设项目建设可行性
  • 网站建站公司一站式服务学校网站开发招标
  • asp.net mvc 5 网站开发之美电商网站 流程图
  • 室内设计素材网站推荐郑州专业做淘宝网站建设
  • 新建的网站怎么做seo优化模板规格尺寸及价格