让你一分钟认识电子身份验证系统EID
什么是EID
eID是英文“Electronic Identity”的英文简称,中文名为“电子身份证”或“网络电子身份证”,由公安部第三研究所建设和开发,并由“公安部公民网络身份识别系统”签发给公民的网络电子身份标识,以密码技术为基础,以智能安全芯片为载体,用于在网络远程证实个人真实身份。
现有互联网远程身份验证存在的问题
目前国内的网络远程身份验证普遍使用了"关联比对"方法,即通过用户输入的"姓名+身份证号"等个人信息,经过后台对姓名和身份证号关联关系的比对来认定其身份。
"关联比对"法在大规模应用的场景下主要存在几个问题:
• "关联比对"并不能保证网络另一端人身份的真实性
• 由于互联网服务机构保护不当导致个人身份信息大规模泄露案件频繁发生
• 身份冒用、盗用及侵犯隐私案件急剧上升
而eID技术在网络远程身份验证时,既能保证身份真实性和有效性又不会泄露个人身份信息。
EID电子身份验证系统有什么用
隐私保护
没有eID:很多需要实名的网站,在注册时需要用户填写一些个人隐私信息,例如身份证号、学号、家庭住址等。但是网站可能并不可靠,或许被黑客攻破获取,或许被网站非法出售,造成隐私的泄露。
有了eID:只凭姓名和eID,不需要其他个人隐私信息,就可以在实名的网站完成注册,而真实的个人信息保存在公安数据库中或是其托管的数据库中,网站是看不到的。网站将eID提交给公安数据库进行查询,返回结果仅是状态信息,即此人是否真实存在,以及eID是否有效,结果中并不带有任何姓名、身份证号等个人隐私信息。这样既达到了实名的真实性要求,又达到了保护个人隐私的目的。假如携程网、12306、旅店业等都采用eID模式,那就不需要出示身份证复印件、不需要提供个人身份隐私,其他人也不可能因为知道身份证号码而去查询其航班行程、所住旅店等。做到真正的隐私保护。由于eID是通过密码技术来将个人的身份与后台数据库关联,身份会被唯一认定,理论上很难被假冒。
安全保障
没有eID:经常发生QQ号被盗、Q币被盗、网上购火车票账户被抢注等情况,导致冒充QQ好友诈骗、冒用他人身份进行交易等;账号追回手续非常复杂不说,也不安全。例如对于实名注册的网站,很多时候是需要通过提交身份证扫描件的方式找回密码,但是此过程并不安全,原因如下:(1)网站客服无法证明提交的身份证扫描件的是本人;(2)提交给网站的身份证扫描件可能被窃取或泄露,其他人凭此可以在网络上进行其他恶意行为。
有了eID:如果发生网络账号被盗情况,只要eID还在用户手上,就可以立即重置密码,因此账户就没有被盗用买卖的空间了。还可以规定关键操作必须使用eID,如网络上的买卖行为必须插入eID,这样即使密码被窃取,也不会造成损失。
高度可信
没有eID:如果身份证丢失,因为身份证缺少注销功能,即使挂失补办了,社会上可能还会有两个身份证在流通。
有了eID:eID具有唯一性,需要联网认证,申领了新的,旧的就自动被注销而无法再使用,因此eID持有者被认定为是可信的。而且由于eID具有PIN码,别人捡到也无法使用。eID本身采用先进密码技术,重要信息在key中物理上就无法被读取,因此无法被破解。
当然,并非所有网站都需要使用eID,eID的使用范围主要是当前已经实名制的网络服务,如新浪微博的加V认证等,原本就已经实名制,eID只是使其认证更加可信,防止他人仿冒。另外eID的使用凭用户自愿,并非强制使用。但是未来eID将在全国推广,而且具有如此明显的优势与好处,相信会有越来越多的用户选择eID,也会有越来越多的网络服务集成eID,共同构建安全可信的网络空间。
版权声明:本文为博主原创文章,未经博主允许不得转载。
让你一分钟认识电子身份验证系统EID的更多相关文章
- ASP.NET Core 使用 JWT 搭建分布式无状态身份验证系统
为什么使用 Jwt 最近,移动开发的劲头越来越足,学校搞的各种比赛都需要用手机 APP 来撑场面,所以,作为写后端的,很有必要改进一下以往的基于 Session 的身份认证方式了,理由如下: 移动端经 ...
- ASP.NET没有魔法——ASP.NET 身份验证与Identity
前面的文章中为My Blog加入了文章的管理功能(ASP.NET没有魔法——ASP.NET MVC使用Area开发一个管理模块),但是管理功能应该只能由“作者”来访问,那么要如何控制用户的访问权限?也 ...
- 教你如何实现微信小程序与.net core应用服务端的无状态身份验证
随着.net core2的发布,越来越多人使用.net core2开发各种应用服务端,下面我就结合自己最近开发的一款小程序,给大家分享下,怎么使用小程序登录后,小程序与服务端交互的权限控制. .net ...
- shiro实战系列(五)之Authentication(身份验证)
建议学习shiro读读官方文档,虽然不一定读的懂,但是建议要大致浏览,心中有个大概,这样对于学习还是有一定帮助 官网地址:https://shiro.apache.org/ Authenticatio ...
- 无password身份验证:安全、简单且部署高速
Passwordless authentication: Secure, simple, and fast to deploy [编者按]本文作者为 Florian Heinemann 与 Rober ...
- .net core web API使用Identity Server4 身份验证
一.新建一个.net core web项目作为Identity server 4验证服务. 选择更改身份验证,然后再弹出的对话框里面选择个人用户账户. nuget 安装Identity server相 ...
- 《Python编程:从入门到实践》第19章笔记:用户/用户注册/身份验证
接上篇django最基本的一些日常用法,这是第19章笔记,希望在做"动手试一试"的时候可以让自己方便参考. 这一章实现了两个功能: 1.让用户能够添加主题Topic和条目Entry ...
- ASP.NET Forms 身份验证
ASP.NET Forms 身份验证 在开发过程中,我们需要做的事情包括: 1. 在 web.config 中设置 Forms 身份验证相关参数.2. 创建登录页. 登录页中的操作包括: 1. 验证用 ...
- ASP.NET Core 1.1 静态文件、路由、自定义中间件、身份验证简介
概述 之前写过一篇关于<ASP.NET Core 1.0 静态文件.路由.自定义中间件.身份验证简介>的文章,主要介绍了ASP.NET Core中StaticFile.Middleware ...
随机推荐
- POJ -- 3233 求“等比矩阵”前n(n <=10^9)项和
Matrix Power Series Description Given a n × n matrix A and a positive integer k, find the sum S = ...
- 【CSS3】Advanced9:Transformation
1.transform:rotate(-10deg) skew(20deg,10deg) scaling(2/1,2) translate/移动(100px,200px) 2.transform:ma ...
- Java笔记(二)……Hello world!
编写源文件 将Java代码编写到扩展名为.java的文件中,此文件称为源文件. 1: class Hello 2: { 3: public static void main(String[] args ...
- Azure 虚拟机常见问题-下
虚拟机上的默认用户名和密码是什么? Azure 提供的映像没有预先配置用户名和密码.使用这些映像中的其中一个创建虚拟机时,你需要提供用户名和密码,用于登录到虚拟机. 提示 如果忘记了用户名或密码且安装 ...
- HW4.42
import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner i ...
- HDOJ-ACM1010(JAVA) 奇偶剪枝法 迷宫搜索
转载声明:原文转自:http://www.cnblogs.com/xiezie/p/5568822.html 第一次遇到迷宫搜索,给我的感觉是十分惊喜的:搞懂这个的话,感觉自己又掌握了一项技能~ 个人 ...
- CentOS设置在同一窗口打开文件夹
默认情况下,CentOS双击文件夹会打开一个新窗口.这对于习惯Windows的用户会感觉非常别扭.其实,如果用鼠标中键双击文件夹,就不会打开新窗口了.当然,也可以按照如下设置: 1. 打开任意一个文 ...
- 简单计算器 (c语言课程设计)
可以实现简单的加减乘除四则运算 #include<stdio.h> #include<string.h> #define MAX 10100 int main() { int ...
- maven依赖范围
Scope: Compile:编译依赖,默认就是compile,在编译.测试.运行都有效 Test:测试依赖,仅测试有效 例如Junit Provided:已提供依赖范围.编译.测试有效,运行时候无效 ...
- 11.编写一个Java程序,计算半径为3.0的圆周长和面积并输出结果。把圆周率π定义为常量,半径定义为变量,然后进行计算并输出结果。
package com.hanqi.yzljs; public class yzljs { public static void main(String[] args) { final dou ...