- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于javascript的图像加密传输
摘要:提出了解决图像数据在从服务器到浏览器传输过程中的信息泄漏问题的一种方法,在服务器端将图像原始数据加密编码,在客户端用javascript技术解码解密成图像原始数据,再通过base64编码的方式将图像显示在浏览器中。
关键词:javascript;编码;加密;xmlhttp
中图分类号:TP393.09文献标识码:A文章编号:1009-3044(2011)31-7677-02
Image Encrypt Transmission Based on javascript
LIU Hua-yu, HUANG Shao-long
(College of Mathematics Science, Luoyang Normal University, Luoyang 471022, China)
Abstract: Proposed a method of solving image data information leak problem on transmission from server to browser, encrypt and encode image original data on server, on client decode and decrypt to image original data, and show image in browser by base64-encoding.
Key words: javascript; encode; encrypt; xmlhttp
显示在浏览器中的图像数据在网络上一般以明文方式传输,即使在网络上以加密方式传输,也需要在进入浏览器前进行解密并在缓存里存放图像文件,前者容易被程序或插件监控,后者可能会出现信息泄漏,这就造成了安全问题。为了解决这个问题,图像数据在服务器端进行加密后在网络上传输,进入浏览器后由javascript负责解密并显示在浏览器上,这样既不会被监控,也不会在缓存中存在,不会出现安全问题。
1 总体思路
javascript通过xmlhttp技术向服务器发出请求并从服务器上得到响应,但加密后的数据是二进制数据,而xmlhttp在现在还没有发展到可以接收二进制数据,所以在服务器端不仅要加密,还要把加密后的数据编码成xmlhttp可以接收的数据,在此处可以用任何编码,甚至是自定义的编码,因为下面要用到base64编码,所以在这里也采用base64编码。
javascript代码通过xmlhttp技术获得加密并编码的数据后,经过解码解密就形成了图像原始数据,但html标准中并不提供通过原始数据显示图像的方法,作为替代方案html标准中允许以base64编码后的图像数据显示图像。它的方式是
其中BASE64DATA是base64编码后的图像数据。
2 base64编码
base64编码以3个字节为一组进行编码,编码的结果是4个字节。将编码前的字节串称为源串,而将编码后的字节串成为目标串。
编码过程:根据源串第一个字节前6位得到一个索引,然后根据表1所示编码表得到目标串第一个字节;根据源串第一个字节后2位加上第二个字节前4位得到一个索引,然后根据表1得到目标串第二个字节;根据源串第二个字节后4位加上第三个字节前2位得到一个索引,然后根据表1得到目标串第三个字节;根据源串第三个字节后6位得到一个索引,然后根据表1得到目标串第四个字节。解码则按编码逆过程进行解码。
如果源串最后剩下一个字节,那么目标串第一个字节如前;目标串第二个字节则根据源串第一个字节后2位加上4个0并根据表1得到;目标串第三个字节和第四个字节为=。如果源串最后剩下两个字节,那么目标串前两个字节如前;目标串第三个字节则根据源串第二个字节后4位加上2个0并根据表1得到;目标串第四个字节为=。
完成base64编码的javascript代码如下:
var keyStr = ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=;
function encode64(input){
var output = ;
var chr1, chr2, chr3 = ;
var enc1, enc2, enc3, enc4 = ;
var i = 0;
do {
chr1 = input.charCodeAt(i++);
chr2 = input.charCodeAt(i++);
chr3 = inpu
您可能关注的文档
最近下载
- 《新媒体传播》课件.ppt VIP
- 2025年安全员c2考试试题库(答案+解析).docx
- GBT45001-2020SO45001:2018 职业健康安全管理体系要求及使用指南.pdf VIP
- 个人业绩相关信息采集表含政治表现、最满意、主要特点、不足.pdf VIP
- 部编版六年级上册道德与法治教案:感受生活中的法律知识.docx VIP
- 货运保险与货损理赔通道整合2025年应用前景.docx VIP
- 《飞机构造基础》课件——第一章 飞机结构.pptx VIP
- 中医治疗“慢脾风”医案37例.doc
- 小学科学新教科版二年级上册第一单元 造房子教案(共6课)(2025秋).docx VIP
- 2025年广西公需科目第二套答案.docx VIP
文档评论(0)