很初级的简单想法,先记下来。
需要有个年轻聪明的青年才俊论证一下:
1、是否用HTTPS,这些就没有必要了。
2、严谨性:是否有漏洞,这么做安全性依赖哪些要素,能多大程度上保证。
3、必要性:是否有冗余环节。
4、性能:压一下,注意监控CPU。
以下是正文。
一、管理
1、所有的秘钥都由我们生成并颁发。
2、我们需要存储:
(1)我们自己的私钥、公钥。
(2)别人的公钥。
(3)所有公钥和实体(如:某组织、某组织中的某人、我们自己等)的对应关系。
3、颁发出去的私钥由安全的方法传递给对方(U盘拷贝?)。最大限度保护对方公钥和映射关系的私密性。
二、过程
1、身份认证过程:
(1)不需要账号、密码神马的。
(2)请求发起过程:
该用户在我们系统的编号设为uuid。
Step 1,对方自己生成一个种子,设为 seed,需确保Seed的随机 。
Step 2,用我们的公钥加密,结果设为 token1。
Step 3,用用户自己的私钥加密,结果设为token2。
用户发 uuid,seed,token1和token2给我们。
(3)验证过程:
Step 1:用自己私钥对token1解密,得到seed。
Step 2:通过uuid获得公钥,用这个公钥解密token2,也得到seed。
Step 3:比对Step 1和Step 2获得的Seed是否相同。如果相同,传输成功。
Step 4:验证成功后,将Token用用户公钥加密,发给用户。我们的服务器保存Token 20分钟。
2、发送数据给我们
(1)发送过程:
数据设为Data。
Step 1:用我们的公钥对Data加密,得到密文C1(需要验证一下效率)。
Step 2:对密文生成数字摘要,设为Z1。
Step 3:用用户自己的私钥对摘要加密,得到密文Z2。
Step 4:用我们的公钥对C2和Token加密,得到密文C3.
Step 5:发送C1和C3给我们。
(2)接收过程:
Step 1:用我们自己的私钥解密得到Data、Z2和Token。
Step 2:通过Token获得用户公钥,对Z2解密得到Z1。
Step 3:对Data生成数字摘要,设为Z1’。
Step 4:比较Z1‘和Z1,如果相同,则接受Data。
3、反馈数据给对方:
blabla
附录:扫盲
(以下内容转自互联网,原始链接... Err...随手把网页关了...)
公钥和私钥就是俗称的不对称加密方式,是从以前的对称加密(使用用户名与密码)方式的提高。用电子邮件的方式说明一下原理。
使用公钥与私钥的目的就是实现安全的电子邮件,必须实现如下目的:
1. 我发送给你的内容必须加密,在邮件的传输过程中不能被别人看到。
2. 必须保证是我发送的邮件,不是别人冒充我的。
要达到这样的目标必须发送邮件的两人都有公钥和私钥。
公钥,就是给大家用的,你可以通过电子邮件发布,可以通过网站让别人下载,公钥其实是用来加密/验章用的。私钥,就是自己的,必须非常小心保存,最好加上 密码,私钥是用来解密/签章,首先就Key的所有权来说,私钥只有个人拥有。公钥与私钥的作用是:用公钥加密的内容只能用私钥解密,用私钥加密的内容只能 用公钥解密。
比如说,我要给你发送一个加密的邮件。首先,我必须拥有你的公钥,你也必须拥有我的公钥。
首先,我用你的公钥给这个邮件加密,这样就保证这个邮件不被别人看到,而且保证这个邮件在传送过程中没有被修改。你收到邮件后,用你的私钥就可以解密,就能看到内容。
其次我用我的私钥给这个邮件加密,发送到你手里后,你可以用我的公钥解密。因为私钥只有我手里有,这样就保证了这个邮件是我发送的。
当A->B资料时,A会使用B的公钥加密,这样才能确保只有B能解开,否则普罗大众都能解开加密的讯息,就是去了资料的保密性。验证方面则是使用签 验章的机制,A传资料给大家时,会以自己的私钥做签章,如此所有收到讯息的人都可以用A的公钥进行验章,便可确认讯息是由 A 发出来的了。
分享到:
相关推荐
感谢您考虑为流明做出贡献! 可以在找到贡献指南。 安全漏洞 如果您发现Lumen内部存在安全漏洞,请发送电子邮件至taylor@laravel.com至Taylor 。 所有安全漏洞将得到及时解决。 执照 Lumen框架是根据的开源软件。
GetTabbedTextExtent 判断一个字串占据的范围,同时考虑制表站扩充的因素 GetTextAlign 接收一个设备场景当前的文本对齐标志 GetTextCharacterExtra 判断额外字符间距的当前值 GetTextCharset 接收当前选入指定...
Angular RESTFul 前端一个 AngularJs 基础项目结构,可以与 OpenAuth 保护的 RestFul API 通信。待办事项添加 HATEOAS 支持遵循 AngularJs Meetup 上讨论的一些添加多种登录支持类型在调用服务器之前考虑将路由...
Tan安全性变体的FinTS 3.0版本。 HBCI或FinTS只有很少的实现。 目前(2015年)只有一种适用于Javascript,但这是商业化的。 该项目试图填补这一空白。 支持的业务交易 加载SEPA帐户信息(HKSPA) 载入帐户交易...
开发 - 开发设置 - 开发者ID,获取AppID与AppSecret用于待会的程序部署(出于安全考虑,AppSecret不再被明文保存) 登录果创后端云平台http://open.yesapi.cn(TODO:需要知道建表) 使用微信开发者工具打开源码,...
Github 简介 Github 简介是 Makers Academy 的第 6 周项目。 本周我们学习了如何使用 jQuery、API 和 ...出于安全考虑,此处不提供 Github API client_id 和 client_secret。 要在本地开发和使用此应用程序,请在
Access2000中文版高级编程 目录 第一部分 编程基础 1 第1章 宏与代码 3 1.1 何时使用代码代替宏 4 1.1.1 何时用宏 4 1.1.2 何时用代码 4 1.2 宏到代码的转换 5 ...14.3.4 使用VBA创建和填充ListView控件 ...
Access2000中文版高级编程 目录 第一部分 编程基础 1 第1章 宏与代码 3 1.1 何时使用代码代替宏 4 ...15.4.3 在Win32api.txt文件中查找API调用 477 15.5 使用API调用的注意事项 479 15.5.1 ...
HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,效率上可能高于Hashtable。 HashMap允许将null作为一个entry的key或者...
-一个完整的平台,非常注重应用程序的可组合性,类型安全的API和客户端库的生成。 具有SQL数据库和无服务器API构建器的Cloud Backend,具有域管理和电子邮件营销工具的Cloud CMS 实时数据库,身份验证,托管。 ...
简介与概述据我们所知,考虑到现有的加密库和JavaScript的本机API,原语的基本实现已在多个环境(例如Node.js和各种浏览器)中分别开发。 为了填补这些不同环境之间的空白,存在一些不错的通用加密套件,它们可以在...
企业IT环境中大量的数据,一般都是存放在SAN甚至是磁带设备上的,这些数据如何无损,安全的接入到Cloud呢?VMware因此提供了RDM, KVM和XEN也支持PVSCSI, 但是Cinder没有考虑这个。 5. Cinder的调度器不完善 ...
:open_file_folder: 将任何本地书签文件夹同步到任何服务器端文件夹 :atom_symbol: 使用任何与Web扩展API兼容的浏览器 :briefcase: 根据需要创建任意数量的同步配置文件 :delivery_truck: 控制同步策略,即单向...
:open_file_folder: 将任何本地书签文件夹同步到任何服务器端文件夹 :atom_symbol: 使用任何与Web扩展API兼容的浏览器 :briefcase: 根据需要创建任意数量的同步配置文件 :delivery_truck: 控制同步策略,即单向...
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 打折式适用性工程 ...
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 打折式适用性工程 ...
我们将其奉献给重视开源软件,安全性和创新的每个人。 YetiForce建立在坚如磐石的Vtiger基础上,但是进行了数百次更改,以最简单的方式帮助完成了最具挑战性的任务。 系统中的每个功能都经过仔细考虑并实现了自动化...
家谱开源家族树软件 ... 为了提供后端API,请查看的Local Development Server部分,并考虑使用获得更好的体验。 运行php artisan migrate --seed 打开client文件夹,复制.env.example文件,将其另存为.e
微服务架构引入策略 – 对传统企业而言,开始时可以考虑引入部分合适的微服务架构原则对已有系统进行改造或新建微服务应用,逐步探索及积累微服务架构经验,而非全盘实施微服务架构。 更多关于微服务架构内容-请...