网络安全——web中常见编码

简介

编码(encode)和解码(decode)是相当广泛的话题,设计计算机对信息处理的方式,常见于加解密中,当然学习WEB也要了解一些常见的编码,可在攻击中使用编码绕过。

ASCII码

ASCII (American Standard Code for Information Interchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是最通用的信息交换标准,并等同于国际标准ISO/IEC 646。

到目前为止共定义了128个字符:

 

常见ASCII码的大小规则:0~9<A~Z<a~z。

1)数字比字母要小。如 “7”<“F”;

2)数字0比数字9要小,并按0到9顺序递增。如 “3”<“8” ;

3)字母A比字母Z要小,并按A到Z顺序递增,如“A”<“Z” ;同理,字母a比字母z要小,“a”<“z”;

4)同个字母的大写字母比小写字母要小32。如“A”<“a” ;

几个常见字母的ASCII码大小: “0”为 48“、A”为65、“a”为97
 

URL编码

url编码是一种浏览器用来打包表单输入的格式。浏览器从表单中获取所有的name和其中的值 ,将它们以name/value参数编码(移去那些不能传送的字符,将数据排行等等)作为URL的一部分或者分离地发给服务器。不管哪种情况,在服务器端的表单输入格式样子像这样:

theName=Ichabod+Crane&gender=male&status=missing& ;headless=yes

URL编码遵循下列规则: 每对name/value由&;符分开;每对来自表单的name/value由=符分开。如果用户没有输入值给这个name,那么这个name还是出现,只是无值。任何特殊的字符(就是那些不是简单的七位ASCII,如汉字)将以百分符%用十六进制编码,当然也包括像 =,&;,和 % 这些特殊的字符。其实url编码就是一个字符ascii码的十六进制。不过稍微有些变动,需要在前面加上“%”。比如“\”,它的ascii码是92,92的十六进制是5c,所以“\”的url编码就是%5c。

在这里插入图片描述

 

unicode编码

Unicode编码,又称万国码、国际码、统一码,是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。Unicode 编码共有三种具体实现,分别为utf-8,utf-16,utf-32,其中utf-8占用一到四个字节,utf-16占用二或四个字节,utf-32占用四个字节。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
计算机网络安全技术 第四讲 密码学基础和加密技术 计算机网络安全技术培训课程(1)全文共57页,当前为第1页。 2 4.1 项目提出 某高校期末考试前期,老师们忙着准备期末考试试题。根据学校要求,相同或相近专业的不同班级同一门课程要采用同一试巻,恰巧张老师和李老师任教同一门课程——C语言程序设计。 于是两位老师商量,先由张老师准备好试题,再由李老师提出修改意见。张老师出好A、B卷试题及参考答案后,通过电子邮件的方式传给李老师,以便李老师提出修改意见,邮件主题为"期末考试试题(C语言程序设计)"。 计算机网络安全技术培训课程(1)全文共57页,当前为第2页。 3 谁料,在期末考试当天,在考场上竟出现了与考试试题几乎一模一样的资料,监考老师马上意识到事件的严重性,考题已泄露!这是一起严重的教学事故。 可是,考题的内容应该只有张老师和李老师知道,张老师和李老师也从来没有把考题的内容告诉过第三个人,那么考题的内容究竟是怎么泄露的呢?是哪个环节出现了问题?谁应该对这起教学事故负责? 计算机网络安全技术培训课程(1)全文共57页,当前为第3页。 4 4.2 项目分析 学校成立了教学事故调查组,经调查发现,张老师发给李老师的电子邮件没有经过加密处理,是以明文的方式传送出去的,在传送过程,被第三方截获,对方再利用网络嗅探软件(如Sniffer),就可以看到邮件的具体内容,所以考题泄露了。 计算机网络安全技术培训课程(1)全文共57页,当前为第4页。 5 4.2 项目分析 因为考试试卷是属于机密资料,在通过电子邮件传送试卷时,一定要采取加密等保密措施,防止邮件内容被第三方所窃取或篡改。 由于电子邮件的发送是要通过不同的路由器进行转发的,直到到达电子邮件目的主机,攻击者完全可以在电子邮件数据包经过这些路由器的时候把它们截取下来而不被我们发现。从技术上看,没有任何方法能够阻止攻击者截取电子邮件数据包,因为你不能确定你的邮件将会经过哪些路由器,更不能确定你的邮件在经过这些路由器的时候,是否会有人把它截获下来。    计算机网络安全技术培训课程(1)全文共57页,当前为第5页。 6 也就是说,没有任何办法可以阻止攻击者截获需要在网络上传输的数据包。这样的结论是让人失望而又无奈的。那么,惟一的办法就是让攻击者截获数据包后无法组装还原成原始文件。手段当然是加密。我们以一定的特别方式编码我们的邮件,只有拥有密匙才能够阅读,而对于攻击者,得到的只是一堆无用的乱码。 还有,一般只能对邮件的正文内容或附件内容进行加密,而不能对邮件主题进行加密,所以邮件主题不要出现敏感信息,如"期末考试试题",这样极容易引起第三方的好奇和兴趣,导致对邮件内容的破解和攻击。 4.2 项目分析 计算机网络安全技术培训课程(1)全文共57页,当前为第6页。 7 假如我们要发送的邮件含有附件,那么可以使用WinZip、WinRAR等这些常用的文件压缩工具对其进行加密。可是如果要发送的邮件只是一些简单的文字信息的话如何才能保护我们的邮件内容呢? 我们可以用A-Lock来加密文本内容的电子邮件,使用它加密后的邮件可以避免第三者偷阅,就算我们在发邮件的时候填错了收件人的地址,将邮件发到了陌生人的手,那么对方看到的也只是一堆乱码,而无法辨认邮件的具体内容。 计算机网络安全技术培训课程(1)全文共57页,当前为第7页。 8  一、加密的方法  步骤1 在电子邮件客户端或WEB页面写好信件的内容后,用鼠标选择将要加密的信件内容使其反显(图1)。 计算机网络安全技术培训课程(1)全文共57页,当前为第8页。 9 步骤2 单击托盘区的A-Lock图标,在出现的菜单选择"Encrypt/Decrypt"(加密/解密)项(图2)。 计算机网络安全技术培训课程(1)全文共57页,当前为第9页。 10  弹出"A-Lock - Password for Encryption"窗口(图3),输入加密密码,注意,未注册的用户密码不能超过7位。更遗憾的是其极具特色的"Password Book"功能也无法使用。 计算机网络安全技术培训课程(1)全文共57页,当前为第10页。 11  步骤3 单击"OK"按钮,完成选定文字的加密。此时,你可以看到刚才选定的文本已经变成一堆乱码了。只在信件抬头与结尾处有"<>"及"<>"的提示性文字,表示加密成功(图4)。 计算机网络安全技术培训课程(1)全文共57页,当前为第11页。 12 二、解密的方法   步骤1 收到使用A-Lock加密的邮件后,解密端也必须安装有A-Lock软件。使用鼠标选定加密的文字,就是从<>到<>的那一部分,使其反显。   步骤2 单击系统托盘区的A-Lock图标,在出现的菜单选择"Encrypt/Decrypt"(加密/解密)项,弹出"A-
译者序 序言 前言 第一部分 高级PHP 第1章 开发思想 1 1.1 PHP与我 1 1.2 计划的重要性 2 1.3 编码规范 3 1.3.1 选择名字 3 1.3.2 使代码更易读 5 1.3.3 添加注释 8 1.3.4 选择谈话式名字 13 1.3.5 保持清晰一致的接口 15 1.3.6 将代码结构化为逻辑群 16 1.3.7 抽取单独的代码块 16 1.4 使用文件将函数分类 16 1.5 编写文档 17 1.6 一个API设计实例 18 1.7 小结 22 第2章 高级语法 23 2.1 PHP语法 23 2.2 定义常量 24 2.3 数组函数 25 2.4 PHP和OOP 31 2.4.1 类:PHP 3.0和PHP 4.0的对比 35 2.4.2 执行类 36 2.4.3 读取对象 37 2.4.4 构造函数 38 2.4.5 继承 38 2.4.6 特殊的OOP函数 39 2.5 链接清单 41 2.6 关联数组 49 2.6.1 多维数组 50 2.6.2 变量参数 51 2.7 多态和自变代码 62 2.7.1 动态函数生成程序 63 2.7.2 自变计数器 67 2.8 小结 68 第3章 应用程序设计:一个实际的例子 69 3.1 项目概观 69 3.2 比较技术环节 70 3.3 IRC网络基础 73 3.4 使应用程序适用于网络 75 3.5 连接网络的接口 76 3.5.1 接口结构 78 3.5.2 下游信息交流 79 3.5.3 上游信息交流 80 3.5.4 在共享的存储器设置一个标志 83 3.5.5 用户接口 84 3.5.6 开发者的接口 84 3.5.7 HTML开发者的接口 85 3.5.8 代码开发者的接口 85 3.6 管理和安全 90 3.6.1 网络等级 90 3.6.2 PHP/Web服务器等级 90 3.6.3 数据库等级 90 3.6.4 IRC等级 91 3.7 执行 91 3.8 小结 91 第二部分 Web应用 第4章 Web应用程序思想 93 4.1 HTTP和“会话” 93 4.1.1 保持状态 93 4.1.2 用cookies进行“会话”ID传输 95 4.1.3 URL手工改写 95 4.1.4 动态路径 96 4.1.5 DNS技巧 98 4.1.6 实际应用的折衷方案 99 4.1.7 PHP的内嵌“会话”库 100 4.2 安全性考虑 106 4.2.1 不要信任Web 107 4.2.2 不要重新发明加密法 111 4.2.3 开发组需要资深人员 118 4.2.4 认证 118 4.3 为什么适用性很重要 120 4.3.1 Web应用程序的“适用性” 121 4.3.2 打折式适用性工程 124 4.3.3 适用性:只要做就可以了 126 4.4 小结 126 第5章 基本网络应用程序策略 127 5.1 PHP正常表格 127 5.2 方案策划 133 5.2.1 团队合作 133 5.2.2 目录结构 134 5.3 CVS:一致版本系统 135 5.3.1 CVS时间节省器: GUIS和CVS web 139 5.3.2 高级CVS 140 5.4 三层式应用程序 145 5.4.1 传统的客户端/服务器 145 5.4.2 PHP和多层应用程序 146 5.4.3 PHP和COM 147 5.4.4 PHP和Java 149 5.5 小结 150 第6章 PHP数据库访问 151 6.1 PHPLib:PHP基础库 151 6.1.1 PHPLib的历史 151 6.1.2 优点和缺点 152 6.1.3 重要文件 152 6.1.4 PHPLib客户化 152 6.2 数据库基本概念 153 6.2.1 可移植性 153 6.2.2 调试模式 154 6.2.3 错误处理 154 6.2.4 DB_Sql实例 154 6.2.5 会话 156 6.2.6 自动撤退 157 6.2.7 网页捕捉 157 6.2.8 串行器 157 6.2.9 会话实例 157 6.2.10 缩写I:page_open( ) 160 6.2.11 缩写II:purl( )、url( )和pself( ) 161 6.3 认证 162 6.3.1 PHP认证的优点 162 6.3.2 Auth实例 162 6.3.3 Auth内核 163 6.3.4 管理许可等级 165 6.3.5 位运算 166 6.4 小结 170 第7章 尖端应用程序 171 7.1 知识库 171 7.1.1 必要条件清单 172 7.1.2 条件清单 173 7.1.3 模板类 175 7.1.4 SQL递推式 179 7.1.5 身份确认 180 7.1.6 完成的产品 180 7.2 PHP和XML 180 7.2.1 什么是XML 180 7.2.2 DocBook 183 7.2.3 WML(Wireless Markup Language) 184 7.2.4 RDF—Resource Description Framework 184 7.2.5 XML文档 184 7.2.6 PHP和Expat 190 7.2.7 DOM—Document Object Model 197 7.2.8 LibXML—一个基于DOM的XML 分析 200 7.3 用WDDX相互交换数据 205 7.3.1 WDDX 205 7.3.2 挑战 205 7.3.3 可能的情况 206 7.3.4 用WDDX抽象化数据 206 7.3.5 WDDX数据类型 207 7.3.6 PHP和WDDX 208 7.3.7 WDDX函数 208 7.4 小结 210 第8章 案例研究 211 8.1 BizChek.com 211 8.1.1 Web 邮件 211 8.1.2 选择PHP 212 8.1.3 渴望升级 213 8.1.4 结论 213 8.2 SixCMS 213 8.2.1 公司背景 213 8.2.2 开放代码的商务 214 8.2.3 为什么用PHP 214 8.2.4 技术考虑事项 214 8.2.5 实际生活的PHP 215 8.2.6 PHP:一个商业优势 216 8.3 Marketplayer.com 216 8.3.1 公司的背景 216 8.3.2 PHP产品 217 8.3.3 为什么选择PHP 217 8.3.4 在MarketPlayer.com产品开发使用PHP的优势 217 8.3.5 PHP实际生活的竞争 218 8.3.6 会话 218 8.3.7 PHP服务器集成 219 8.3.8 代码管理 219 8.3.9 前景 219 8.4 小结 219 8.5 参考 220 第三部分 深入研究PHP 第9章 扩充PHP 4.0:探究PHP内核 221 9.1 概述 221 9.2 什么是Zend?什么是PHP? 221 9.3 扩充可能性 222 9.3.1 外部模块 222 9.3.2 内嵌模块 223 9.3.3 Zend引擎 223 9.4 源代码格式 223 9.4.1 宏 224 9.4.2 内存管理 225 9.4.3 目录和文件函数 225 9.4.4 字符串处理 226 9.4.5 复杂类型 226 9.5 PHP的自动建造系统 226 9.6 创建扩充 228 9.7 编辑模块 229 9.7.1 编辑使用Make 229 9.7.2 手工编辑 229 9.8 使用扩充 230 9.9 故障处理 231 9.10 源代码讨论 231 9.10.1 模块结构 231 9.10.2 标题文件包含 231 9.10.3 声明输出函数 232 9.10.4 Zend函数块的声明 232 9.10.5 Zend模块的声明 234 9.10.6 Get_module()的执行 236 9.10.7 所有输出函数的实施 236 9.10.8 小结 237 9.11 接收变量 237 9.11.1 决定变量的数目 237 9.11.2 获取变量 238 9.11.3 处理数目变化的变量/选项参数 238 9.11.4 访问变量 240 9.11.5 处理参考变量传递的参数 243 9.11.6 为其他参数确保写安全 245 9.12 创建变量 246 9.12.1 概述 246 9.12.2 长(整)型 249 9.12.3 双精度(浮点)型 249 9.12.4 字符串 249 9.12.5 布尔型 250 9.12.6 数组 250 9.13 对象 253 9.14 资源 254 9.15 利用自动全局变量创建的宏 255 9.16 复制变量内容:复制构造函数 256 9.17 返回值 257 9.18 打印信息 258 9.18.1 phpinfo()包含输出 259 9.18.2 执行信息 260 9.19 启动和关闭函数 261 9.20 调用用户函数 261 9.21 下一步该做些什么 265 9.22 参考:一些配置宏 265
计算机网络安全技术 第四讲 密码学基础和加密技术 计算机网络安全技术培训课程全文共56页,当前为第1页。 2 4.1 项目提出 某高校期末考试前期,老师们忙着准备期末考试试题。根据学校要求,相同或相近专业的不同班级同一门课程要采用同一试巻,恰巧张老师和李老师任教同一门课程——C语言程序设计。 于是两位老师商量,先由张老师准备好试题,再由李老师提出修改意见。张老师出好A、B卷试题及参考答案后,通过电子邮件的方式传给李老师,以便李老师提出修改意见,邮件主题为"期末考试试题(C语言程序设计)"。 计算机网络安全技术培训课程全文共56页,当前为第2页。 3 谁料,在期末考试当天,在考场上竟出现了与考试试题几乎一模一样的资料,监考老师马上意识到事件的严重性,考题已泄露!这是一起严重的教学事故。 可是,考题的内容应该只有张老师和李老师知道,张老师和李老师也从来没有把考题的内容告诉过第三个人,那么考题的内容究竟是怎么泄露的呢?是哪个环节出现了问题?谁应该对这起教学事故负责? 计算机网络安全技术培训课程全文共56页,当前为第3页。 4 4.2 项目分析 学校成立了教学事故调查组,经调查发现,张老师发给李老师的电子邮件没有经过加密处理,是以明文的方式传送出去的,在传送过程,被第三方截获,对方再利用网络嗅探软件(如Sniffer),就可以看到邮件的具体内容,所以考题泄露了。 计算机网络安全技术培训课程全文共56页,当前为第4页。 5 4.2 项目分析 因为考试试卷是属于机密资料,在通过电子邮件传送试卷时,一定要采取加密等保密措施,防止邮件内容被第三方所窃取或篡改。 由于电子邮件的发送是要通过不同的路由器进行转发的,直到到达电子邮件目的主机,攻击者完全可以在电子邮件数据包经过这些路由器的时候把它们截取下来而不被我们发现。从技术上看,没有任何方法能够阻止攻击者截取电子邮件数据包,因为你不能确定你的邮件将会经过哪些路由器,更不能确定你的邮件在经过这些路由器的时候,是否会有人把它截获下来。    计算机网络安全技术培训课程全文共56页,当前为第5页。 6 也就是说,没有任何办法可以阻止攻击者截获需要在网络上传输的数据包。这样的结论是让人失望而又无奈的。那么,惟一的办法就是让攻击者截获数据包后无法组装还原成原始文件。手段当然是加密。我们以一定的特别方式编码我们的邮件,只有拥有密匙才能够阅读,而对于攻击者,得到的只是一堆无用的乱码。 还有,一般只能对邮件的正文内容或附件内容进行加密,而不能对邮件主题进行加密,所以邮件主题不要出现敏感信息,如"期末考试试题",这样极容易引起第三方的好奇和兴趣,导致对邮件内容的破解和攻击。 4.2 项目分析 计算机网络安全技术培训课程全文共56页,当前为第6页。 7 假如我们要发送的邮件含有附件,那么可以使用WinZip、WinRAR等这些常用的文件压缩工具对其进行加密。可是如果要发送的邮件只是一些简单的文字信息的话如何才能保护我们的邮件内容呢? 我们可以用A-Lock来加密文本内容的电子邮件,使用它加密后的邮件可以避免第三者偷阅,就算我们在发邮件的时候填错了收件人的地址,将邮件发到了陌生人的手,那么对方看到的也只是一堆乱码,而无法辨认邮件的具体内容。 计算机网络安全技术培训课程全文共56页,当前为第7页。 8  一、加密的方法  步骤1 在电子邮件客户端或WEB页面写好信件的内容后,用鼠标选择将要加密的信件内容使其反显(图1)。 计算机网络安全技术培训课程全文共56页,当前为第8页。 9 步骤2 单击托盘区的A-Lock图标,在出现的菜单选择"Encrypt/Decrypt"(加密/解密)项(图2)。 计算机网络安全技术培训课程全文共56页,当前为第9页。 10  弹出"A-Lock - Password for Encryption"窗口(图3),输入加密密码,注意,未注册的用户密码不能超过7位。更遗憾的是其极具特色的"Password Book"功能也无法使用。 计算机网络安全技术培训课程全文共56页,当前为第10页。 11  步骤3 单击"OK"按钮,完成选定文字的加密。此时,你可以看到刚才选定的文本已经变成一堆乱码了。只在信件抬头与结尾处有"<>"及"<>"的提示性文字,表示加密成功(图4)。 计算机网络安全技术培训课程全文共56页,当前为第11页。 12 二、解密的方法   步骤1 收到使用A-Lock加密的邮件后,解密端也必须安装有A-Lock软件。使用鼠标选定加密的文字,就是从<>到<>的那一部分,使其反显。   步骤2 单击系统托盘区的A-Lock图标,在出现的菜单选择"Encrypt/Decrypt"(加密/解密)项,弹出"A-Lock - Password for Decryption"窗口

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值