全域数字证书详解二---------------身份标识

问题描述

数字证书安全产品当前使用状况目前使用的数字证书产品,基本是在作为安全产品使用。大部分只是用到了非对称算法,产生数字签名,验证签名,以保证原文信息不被篡改。当前身份信任域问题每个人在现实世界中,都有作为一个自然人的身份认可,例如:张三,在现实生活中大家都知道你是张三,承认你是张三的身份,只要你本人拿着“张三”的身份证,就可以去办理诸多服务。而在虚拟网络中却没有一个可以真正作为身份的象征。现在大部分网站采用的都是"userName"和"password"来标识一个用户。认为拥有当前用户名和密码的所有权,就能证明当前用户是你。而这种身份方式的流通性极差。在应用A下注册,这种身份可以得到承认,而到了应用B下,身份就无法识别了。需要重新注册,这就导致了你的身份只能在一个信任域里得到承认。从不同角度上分析从用户体验上来说,一个经常有互联网活动行为的自然人,就需要记得多个应用下的“用户名”和“密码”。体验十分繁琐。从安全角度上来说,其实除了自己保管密码以外,运营商也在为你保存着。这就增加了“用户名”和“密码”泄露的风险,大部分人在不同的应用下为了方便,大都喜欢注册相同的“usrName”和“password”,这样一个网站信息泄露,就会产生连锁反映,使别的账户也不安全。例如最近的“信息泄露风波”。从非CA运营商角度来说,信息安全大都不是运营商的主要业务。在投入上肯定少之又少自然也就能被理解了。全域数字证书全域数字证书架构:在该架构下,顶级为工信部root根,颁发给各CA证书。各CA都可以给相同的自然人或企业颁发个人全域数字证书或企业全域数字证书。再下一级,各个运营商只要信任CA,并进行CRL或者OCSP校验,就可以验证证书的合法性,从而映射出该自然人,同时保证该自然人或企业的操作。全域数字证书,首先要映射自然人或者企业。个人全域数字证书证书名称、L、ST、C,可以描述清楚是“谁”。加入IdType:identityNo(或officerNo);serialNumber:“身份证号”或“军官证号”。为了不泄露个人信息,“身份证号”和“军官证号”进行哈希。身份证和军官证可以作为自然人的证明凭证。这样就能将“数字证书”和现实身份证做关联绑定。由“数字证书”知道“身份证号”然后可以查到“自然人”,同时也可作为自然人的唯一ID被标识。这样就能很好的建立起一个信任链,完成网络身份和自然人的映射关系。注明:oid:2.4.5.15目前还没有被注册,所以还无法被微软证书库支持,需要自己去解析OID。企业全域数字证书:一个合法企业,应该有工商营业执照号,和组织机构代码证号。加入IdType:businessNo(或orgCode);serialNumber:“工商营业执照号”(或“组织机构代码证号”),这里就不需要加密了,因为这些证件号本来就是公开的,并且可以在工商局查到。同时也可作为一家企业的唯一ID被标识定制型CA现在大部分CA公司的业务都是定制型CA,即给每一个项目定制一套CA系统。即使同一家CA公司在不同项目中的用户都无法做到相互流通可信。使用全域数字证书这样映射之后,至少解决了一个CA域下,可以将不同应用的用户提供出去给别的应用,实现身份流通。如果所有的CA都支持这种标准,那么就可以实现“全域”身份体系。解释:这里要做的不是“单点登录”,而是身份统一标识,使身份可以在不同应用下得到信任和统一。有关实名认证实名认证,有着现实的业务需求。很多人都担心自己的信息被泄露,所以不愿意实名认证。其实并不用那么担心,一个人从出生那一刻开始就已经被实名认证。首先是登记户口,进入公安数据系统(id5)。后来要上学申报学籍,进入教育数据库系统。再后来要工作发工资,办理银行卡,进入金融数据系统。所以实名认证并没那么可怕,并且早都被认证了。而国密对“CA”企业有着严格的要求,从物理安全上讲,要求CA机房建筑必须防火、防水、防震、防电磁辐射、防物理破坏和外人侵入等。而一些“CA”企业已经做到了“七层防护措施”。关于信息安全转嫁问题我国已经出台了《电子签名法》。也就是说电子签名是受到法律保护的。但还有待于改进。从某种意义上来说,每个从事互联网活动的自然人,都应该对自己的行为负责,就像在现实世界中一样。“用户名”和“密码”存在服务端,让别人来承担自己个人身份信息的保管义务,从义务和逻辑上都是不合适的。应当由个人承担对“密钥”的保管义务和法律责任。使用全域数字证书就能很好的将这种义务与责任,由运营商转嫁到个人。同时将信任安全问题转嫁给CA。互联网发展到今天,已经越来越细,运营商应当将与自己耦合度低的业务,交由更专业的组织或企业来做。最后,欢迎从事CA行业的人员,积极讨论,提出和完善“全域数字证书”更好的建议和意见。参考文献:http://wenku.baidu.com/view/7996841db7360b4c2e3f6460.html特别声明:本人只在ITEYE和CSDN发布原创,该文章以CC-by-sa3.0协议授权,该文字只要在“署名”、“相同方式”共享的条件下就可以供任何人使用。

解决方案

本帖最后由 luckymjl 于 2012-01-18 10:24:24 编辑
解决方案二:
自己顶一个,感兴趣的同行,可以一起讨论一下
解决方案三:
请教一下基于身份的签名与签名本身有什么不同?
解决方案四:
引用2楼的回复:

请教一下基于身份的签名与签名本身有什么不同?

答:本质上没有不同,都是相同的非对称加密算法,区别在于“全域数字证书”关注的是人与证书的映射关系。通过证书,起到不同用户的身份可以跨信任域使用。同时可以将应用的安全风险,转嫁给CA和用户个人。增强了数字证书的应用性。强调身份识别。

时间: 2024-09-17 07:13:57

全域数字证书详解二---------------身份标识的相关文章

Android 安全加密:数字签名和数字证书详解_Android

Android安全加密专题文章索引 Android安全加密:对称加密 Android安全加密:非对称加密 Android安全加密:消息摘要Message Digest Android安全加密:数字签名和数字证书 Android安全加密:Https编程 以上学习所有内容,对称加密.非对称加密.消息摘要.数字签名等知识都是为了理解数字证书工作原理而作为一个预备知识.数字证书是密码学里的终极武器,是人类几千年历史总结的智慧的结晶,只有在明白了数字证书工作原理后,才能理解Https 协议的安全通讯机制.

Android 安全加密:数字签名和数字证书详解

Android安全加密专题文章索引 Android安全加密:对称加密 Android安全加密:非对称加密 Android安全加密:消息摘要Message Digest Android安全加密:数字签名和数字证书 Android安全加密:Https编程 以上学习所有内容,对称加密.非对称加密.消息摘要.数字签名等知识都是为了理解数字证书工作原理而作为一个预备知识.数字证书是密码学里的终极武器,是人类几千年历史总结的智慧的结晶,只有在明白了数字证书工作原理后,才能理解Https 协议的安全通讯机制.

全域数字证书构想

问题描述 本次个人信息泄露风波,真的是让很多人目瞪口呆.作为从事一个互联网信息安全方面的工作的人员,我同时也看到了自己身上的使命.好了抒情就到此为止,下边开始步入正题.首先说一下个人全域数字证书构想.我一直认为个人信息保存在运营商手中是不安全的,线下有身份做作为公民的身份标识,线上应该推行一种网络身份证.而作为目前比较安全的又可行的安全产品,我比较推行数字证书这种产品.数字证书这种产品的基础是非对称加密算法.一个私钥,一个公钥,私钥加密,公钥解密.这是大家都知道的.使用数字证书作为载体,可以对内

Android 布局学习之——Layout(布局)详解二(常见布局和布局参数)

  [Android布局学习系列]   1.Android 布局学习之--Layout(布局)详解一   2.Android 布局学习之--Layout(布局)详解二(常见布局和布局参数)   3.Android 布局学习之--LinearLayout的layout_weight属性   4.Android 布局学习之--LinearLayout属性baselineAligned的作用及baseline      Layout Parameters(布局参数):            在XML文

Masonry自动布局详解二:动画更新约束

Masonry自动布局详解二:动画更新约束 说到iOS自动布局,有很多的解决办法.有的人使用xib/storyboard自动布局,也有人使用frame来适配.对于前者,笔者并不喜欢,也不支持.对于后者,更是麻烦,到处计算高度.宽度等,千万大量代码的冗余,对维护和开发的效率都很低. 笔者在这里介绍纯代码自动布局的第三方库:Masonry.这个库使用率相当高,在全世界都有大量的开发者在使用,其star数量也是相当高的. 支持原创,请阅读原文 效果图 本节详解Masonry的以动画的形式更新约束的基本

IReport与JasperReport开发详解二

详解  IReport与JasperReport开发详解二        3.2.1  设计报表                现在请点击菜单"DataSource"然后选取中"Report query"项,也可以点击图标 ,接着IReport会弹出一个对话框(如图):现在我们在"Report SQL Query"中输入SQL语句"select * from titles",然后去掉"Automatically Re

python变量不能以数字打头详解_python

在编写python函数时,无意中发现一个问题:python中的变量不能以数字打头,以下函数中定义了一个变量3_num_varchar,执行时报错. 函数如下: def database_feild_varchar_trans(in_feild): ''' transfer the feild if varchar then 3times lang else no transfer ''' feild_split = in_feild.split(' ') is_varchar = feild_s

使用Java构造和解析Json数据的两种方法(详解二)_java

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,是理想的数据交换格式.同时,JSON是 JavaScript 原生格式,这意味着在 JavaScript 中处理 JSON数据不须要任何特殊的 API 或工具包. 在www.json.org上公布了很多JAVA下的json构造和解析工具,其中org.json和json-lib比较简单,两者使用上差不多但还是有些区别.下面接着介绍用org.json构造和解析Json数据的方法

Bootstrap框架的学习教程详解(二)_javascript技巧

Bootstrap,来自 Twitter,是目前最受欢迎的前端框架.Bootstrap 是基于 HTML.CSS.JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加快捷. 一.下载Bootstrap Bootstrap (当前版本 v3.3.0)提供以下几种方式帮你快速上手,每一种方式针对具有不同技能等级的开发者和不同的使用场景. 下载地址:http://v3.bootcss.com/getting-started/ PS:其实我们不用下载bootstrap也可以使用它: Bootst