公钥加密

Coursera: Internet History, Technology, and Security

北城余情 提交于 2020-01-01 14:31:51
课程网址:https://www.coursera.org/learn/internet-history 学习笔记: Week 1: History - Dawn of Early Computing (1940 - 1960) War Time Computing and Conmmunication — High Stakes Research in Computing, and Communication 二战刺激了政府对各种科技的研究投入,由此促进了计算机技术的发展,其中就包括电子计算机的诞生。 为了解密德国的无线电情报,英国布莱切利园( Bletchley Park )内以艾伦·图灵( Alan Turing )为代表的跨学科( cross-disciplinary )团队为电子通信和计算( electronic communication and computation )技术打下了基础。 — Alan Turing and Bletchley Park 在二战期间,布莱切利园是英国政府进行密码解读的主要场所,各行各业的上万名人员在此处工作,轴心国的密码与密码文件,都会送到那里进行解码。布莱切利园是最早的跨学科合作部门。 Bombe 是一台英国机械计算机,致敬波兰密码破译机 Bomba ,对破译德国 Enigma 密码机起到了重要作用,一个 Bombe 可以模拟36个

kali源

痴心易碎 提交于 2019-12-30 05:33:53
apt源: #中科大 deb http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib deb-src http://mirrors.ustc.edu.cn/kali kali-rolling main non-free contrib #阿里云 deb http://mirrors.aliyun.com/kali kali-rolling main non-free contrib deb-src http://mirrors.aliyun.com/kali kali-rolling main non-free contrib #清华大学 deb http://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free deb-src https://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main contrib non-free #浙大 deb http://mirrors.zju.edu.cn/kali kali-rolling main contrib non-free deb-src http://mirrors.zju.edu.cn/kali kali

白话HTTPS

拈花ヽ惹草 提交于 2019-12-29 07:38:02
HTTPS是传输协议吗? HTTPS与HTTP有什么关系? HTTPS为什么会安全? 闲扯一下 Mac笔记本、Windows台式机、Linux主机。像这三种类型,它们硬件不同,系统不同,服务端处理的编程语言不同。它们之间却可以在网络的世界了自由联通。靠的是什么呢?靠的是它们遵守相同的规则(如:HTTP)。应用层用什么格式(语言编码,报文字段)封装报文、传输层如何将大量的数据分段,并给每帧数据添加编号和端口信息、网络层如何给没帧数据添加IP地址,目标MAC地址、数据链路层如何将数字信息通过网卡发出去。 HTTPS是传输协议吗? 目前常见的应用层协议 好像没有看到HTTPS啊? 没错,HTTPS并非TCP/IP协议族中的一员,它其实是HTTP协议+SSL协议的组合体,是披着SSL外衣的HTTP。 HTTPS与HTTP有什么关系? HTTP实现的功能:一种机制简单(这也是从早期众多传输协议中走出来的原因)的超文本传输协议,为客户端和服务器通信服务,是处在TCP/IP协议族中的应用层协议。 HTTP在发送请求时,采用四层架构。 应用层:提供多种应用服务,如:HTTP FTP DNS等,可以直接提供给开发者使用。 传输层:网络间数据的传输,如:TCP TDP,报文数据分割打包成帧 网络层:处理网络中流动的数据包,在复杂的网络段中选择一条传输路线,将数据包送到目的地。将现实中的寄快递

springboot+security+jwt+mysql 动态权限 利用拦截器+token实现一个账号不能多人同时登陆

笑着哭i 提交于 2019-12-26 17:07:05
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 一、数据库 二、controller package cn.**.controller; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.core.context.SecurityContextHolder; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; /** * @ProjectName: springbootSecurity * @Package: cn.cn.***.security.controller * @Author: huat * @Date: 2019/12/12 14:56 * @Version: 1.0 */ @RestController public class UserController { @RequestMapping("/index") public String login(){ return "index"; }

ssl原理及ssl配置

烂漫一生 提交于 2019-12-25 19:51:05
先来扫盲 CA证书 https://coding.net/u/aminglinux/p/nginx/git/blob/master/ssl/ca.md 先来一个例子 A公司的小华被派到B公司办事情。B公司如何信任小华是A公司派来的呢? 普通介绍信 为了让B公司信任小华,A公司特意给小华开了一封介绍信,在信件中详细说明了小华的特征以及小华过来的目的, 并且声明这个小华确实是A公司派来的,除此之外还要有一个A公司的公章。 这样B公司前台姐拿到介绍信后,通过信件内容和A公司公章就能判断出小华确实是A公司派来的员工。 那万一A公司公章是假的呢?毕竟公章伪造太容易了,这样岂不是会存在问题。咱们就暂且认为公章这种东西很难伪造, 否则故事无法继续喽。 引入第三方中介公司 好,回到刚才的话题。如果和B公司有业务往来的公司很多,每个公司的公章都不同,那B公司的前台姐就要懂得分辨各种公章, 非常滴麻烦。所以,有某个中介公司C,发现了这个商机。C公司专门开设了一项“代理公章”的业务。    于是今后,A公司的业务员去B公司,需要带2个介绍信: 介绍信1(含有C公司的公章及A公司的公章。并且特地注明:C公司信任A公司。) 介绍信2(仅含有A公司的公章,然后写上:兹有xxx先生/女士前往贵公司办理业务,请给予接洽......。) 这样不是增加麻烦了吗?有啥好处呢? 主要的好处在于,对于接待公司的前台

公钥和私钥

落爺英雄遲暮 提交于 2019-12-24 14:07:21
一直以来对公钥和私钥都理解得不是很透彻,感觉到模棱两可。今天在网上找了半天,通过查看对这个密钥对的理解,总算弄清楚了。 公钥和私钥就是俗称的不对称加密方式,是从以前的对称加密(使用用户名与密码)方式的提高。 用电子邮件的方式说明一下原理。 使用公钥与私钥的目的就是实现安全的电子邮件,必须实现如下目的: 1. 我发送给你的内容必须加密,在邮件的传输过程中不能被别人看到。 2. 必须保证是我发送的邮件,不是别人冒充我的。 要达到这样的目标必须发送邮件的 两人都有公钥和私钥 。 公钥,就是给大家用的,你可以通过电子邮件发布,可以通过网站让别人下载,公钥其实是用来加密/验章用的。私钥,就是自己的,必须非常小心保存,最好加上 密码,私钥是用来解密/签章,首先就Key的所有权来说,私钥只有个人拥有。 公钥与私钥的作用是:用公钥加密的内容只能用私钥解密,用私钥加密的内容只能 用公钥解密。 比如说,我要给你发送一个加密的邮件。首先,我必须拥有你的公钥,你也必须拥有我的公钥。 首先,我用你的公钥给这个邮件加密,这样就保证这个邮件不被别人看到,而且保证这个邮件在传送过程中没有被修改。你收到邮件后,用 你的私钥就可以解密 ,就能看到内容。 其次我用我的私钥给这个邮件加密,发送到你手里后,你可以用我的公钥解密。因为私钥只有我手里有,这样就保证了这个邮件是我发送的。 当A->B资料时,A会使用 B的公钥加密

数字签名和数字证书

烈酒焚心 提交于 2019-12-24 14:04:18
到底什么是“数字签名”(digital signature)和“数字证书”digital certificate)?对这些问题的理解,一直模模糊糊,很多细节搞不清楚。 今天,读完一篇 通俗易懂的文章 后,思路豁然开朗。为了加深记忆, 这篇文章的翻译版 记录如下。 原理 1. 鲍勃有两把钥匙,一把是公钥,另一把是私钥。 2. 鲍勃把公钥送给他的朋友们----帕蒂、道格、苏珊----每人一把。 3. 苏珊要给鲍勃写一封保密的信。她写完后用鲍勃的公钥加密,就可以达到保密的效果。 4. 鲍勃收信后,用私钥解密,就看到了信件内容。这里要强调的是,只要鲍勃的私钥不泄露,这封信就是安全的,即使落在别人手里,也无法解密。 5. 鲍勃给苏珊回信,决定采用“数字签名”。他写完后先用Hash函数,生成信件的摘要(digest)。 6. 然后,鲍勃使用私钥,对这个摘要加密,生成“ 数字签名 ”(signature)。 7. 鲍勃将这个签名,附在信件下面,一起发给苏珊。 8. 苏珊收信后,取下数字签名,用鲍勃的公钥解密,得到信件的摘要。由此证明,这封信确实是鲍勃发出的。 9. 苏珊再对信件本身使用Hash函数,将得到的结果,与上一步得到的摘要进行对比。如果两者一致,就证明这封信未被修改过。 10. 复杂的情况出现了。道格想欺骗苏珊,他偷偷使用了苏珊的电脑,用自己的公钥换走了鲍勃的公钥。此时

Java生鲜电商平台-APP/小程序接口传输常见的加密算法及详解

前提是你 提交于 2019-12-24 13:43:05
Java生鲜电商平台-APP/小程序接口传输常见的加密算法及详解 说明:Java生鲜电商平台-APP/小程序接口传输常见的加密算法及详解,加密算法,是现在每个软件项目里必须用到的内容。 广泛应用在包括了用户登入、数字签名、数据传输等多个场合。今天我把常见的加密算法全部整理在这里,供大家学习参考。 首先,大家要知道加密算法能干什么,利用加密算法来对数据通信的过程进行加密传输是一种最常见的安全手段。利用该手段能够达到一下三个目的: 1、数据保密性,防止用户数据被窃取或泄露; 2、数据完整性,防止用户传输的数据被篡改; 3、通信双方身份确认,确保数据来源合法; 常见的加密算法 目前常见的加密算法分类如下: 各种加密算法对比如下: 1,单向散列加密算法: 2,对称加密算法: 3,非对称加密算法: 加密算法详解 一,单向散列加密 单向散列加密算法常用于提取数据,验证数据的完整性。发送者将明文通过单向加密算法加密生成定长的密文串,然后将明文和密文串传递给接收方。接收方在收到报文后,将解明文使用相同的单向加密算法进行加密,得出加密后的密文串。随后与发送者发送过来的密文串进行对比,若发送前和发送后的密文串相一致,则说明传输过程中数据没有损坏;若不一致,说明传输过程中数据丢失了。其次也用于密码加密传递存储。单向加密算法只能用于对数据的加密,无法被解密,其特点为定长输出、雪崩效应。 1.1

数字签名数字证书

浪子不回头ぞ 提交于 2019-12-24 13:05:32
1.用一套图片来说明数字签名和证书 1. 鲍勃有两把钥匙,一把是公钥,另一把是私钥。公钥是对外公开的,私钥只有鲍勃自己知道。 2.鲍勃把公钥送给他的朋友们----帕蒂、道格、苏珊----每人一把 ------------------------------------------------------------------------- 3.苏珊要给鲍勃写一封保密的信。她写完后用鲍勃的公钥加密,就可以达到保密的效果。 ----------------------------------------------------------------------------- 4.鲍勃收信后,用私钥解密,就看到了信件内容。这里要强调的是,只要鲍勃的私钥不泄露,这封信就是安全的,即使落在别人手里,也无法解密。 5.鲍勃给苏珊回信,决定采用"数字签名"。他写完后先用Hash函数,生成信件的摘要(digest)。 6.然后,鲍勃使用私钥,对这个摘要加密,生成"数字签名"(signature)。 7.鲍勃将这个签名,附在信件下面,一起发给苏珊。 8.苏珊收信后,取下数字签名,用鲍勃的公钥解密,得到信件的摘要。由此证明,这封信确实是鲍勃发出的。 9.苏珊再对信件本身使用Hash函数,将得到的结果,与上一步得到的摘要进行对比。如果两者一致,就证明这封信未被修改过。 10.复杂的情况出现了

比特币入门知识

北战南征 提交于 2019-12-22 13:07:23
比特币(bitcoin)诞生于2008年的一篇 论文 。 Bitcoin : A Peer-to-Peer Electronic Cash System 一个署名为中本聪的人,提出了革命性的构想:让我们创造一种不受政府或其他任何人控制的货币!这个想法堪称疯狂:一串数字,背后没有任何资产支持,也没有任何人负责,你把它当作钱付给对方,怎么会有人愿意接受? 但是,狂想居然变成了现实。随后的几年,在全世界无数爱好者的支持下,比特币网络运行起来了,越来越多的人和资本参与,星星之火,终成燎原。刚刚过去的2017年,比特币迎来了爆发式的增长,从年初的1000美元,最高涨到了2万美元,全世界都为之震动,上到政府,下到普通百姓都在关注。事实就是比特币已经并将继续改变世界。 新闻媒体往往只关注它的火爆表现,忽视或者无法回答一些基本的问题。 比特币的原理是什么? 为什么这个无人管理的体系可以成功运作? 比特币交易的流程是怎么回事? 它与区块链又是什么关系? 下面,我尝试回答这些问题,希望帮助大家理解比特币。抛开技术细节,还是很容易解释的。 有一点说明,本文只讨论技术问题,不涉及如何投资比特币,更不会预测价格走势。事实上,我也不知道,如果我知道怎么发财,可能就不会在这里写博客了,嘿嘿! 一、非对称加密 首先,理解比特币,必须理解 非对称加密 。 所谓非对称加密,其实很简单,就是加密和解密需要两把钥匙