Bitcoin Forum
June 21, 2024, 10:23:00 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1] 2 »  All
  Print  
Author Topic: 密码学扫盲:加密、认证、公钥、私钥  (Read 3686 times)
Kuranyi (OP)
Jr. Member
*
Offline Offline

Activity: 58
Merit: 10


View Profile
May 24, 2014, 08:55:42 AM
 #1

密码学的概念容易被搞混淆,对大多数非专业人员而言,的确也情有可原。因为公钥、私钥、加密、认证这些,都是较为复杂的问题,其概念不太容易理解,理解不透就容易产生各种似是而非的概念,为了让大家对于密码学有进一步的了解,这里笔者就详细解说一下公钥和私钥的具体作用和使用方法。
加密和认证

首先我们需要区分加密和认证这两个基本概念。

加密是将数据资料加密,使得非法用户即使取得加密过的资料,也无法获取正确的资料内容,所以数据加密可以保护数据,防止监听攻击。其重点在于数据的安全性。身份认证是用来判断某个身份的真实性,确认身份后,系统才可以依不同的身份给予不同的权限。其重点在于用户的真实性。两者的侧重点是不同的。
公钥和私钥

其次我们还要了解公钥和私钥的概念和作用。

在现代密码体制中,加密和解密是采用不同的密钥(公开密钥),也就是非对称密钥密码系统,每个通信方均需要两个密钥,即公钥和私钥,这两把密钥可以互为加解密。公钥是公开的,不需要保密,而私钥是由个人自己持有,并且必须妥善保管和注意保密。
公钥、私钥的原则

一个公钥对应一个私钥。

密钥对中,让大家都知道的是公钥,不告诉大家,只有自己知道的,是私钥。

如果用其中一个密钥加密数据,则只有对应的那个密钥才可以解密。

如果用其中一个密钥可以进行解密数据,则该数据必然是对应的那个密钥进行的加密。

非对称密钥密码的主要应用就是公钥加密和公钥认证,而公钥加密的过程和公钥认证的过程是不一样的,下面我就详细讲解一下两者的区别。

基于公开密钥的加密过程

比如有两个用户Alice和Bob,Alice想把一段明文通过双钥加密的技术发送给Bob,Bob有一对公钥和私钥,那么加密解密的过程如下:

        Bob将他的公开密钥传送给Alice。
        Alice用Bob的公开密钥加密她的消息,然后传送给Bob。
        Bob用他的私人密钥解密Alice的消息。

上面的过程可以用下图表示,Alice使用Bob的公钥进行加密,Bob用自己的私钥进行解密。

1111

身份认证

身份认证和加密就不同了,主要用户鉴别用户的真伪。这里我们只要能够鉴别一个用户的私钥是正确的,就可以鉴别这个用户的真伪。

还是Alice和Bob这两个用户,Alice想让Bob知道自己是真实的Alice,而不是假冒的,因此Alice只要使用公钥密码,对文件签名,发送给Bob,Bob使用Alice的公钥对文件进行解密,如果可以解密成功,则证明Alice的私钥是正确的,因而就完成了对Alice的身份鉴别。整个身份认证的过程如下:

        Alice用她的私人密钥对文件加密,从而对文件签名。
        Alice将签名的文件传送给Bob。
        Bob用Alice的公钥解密文件,从而验证签名。

上面的过程可以用下图表示,Alice使用自己的私钥加密,Bob用Alice的公钥进行解密。

22222
FPCN
Sr. Member
****
Offline Offline

Activity: 266
Merit: 250


View Profile
May 24, 2014, 09:01:10 AM
 #2

有用,感谢分享,学习了

AMHash
ASICMINERROCKMINER ● Purchase from: AMHash (20Th/s min) ● Havelock (1Gh/s min)Hashie (20Gh/s min)
Cloud-mining contracts: 0.0012 BTC per Gh ● Maintenance fee: $0.001551 per Gh per day ● Upto 6% Christmas Bonus

joinecoin
Newbie
*
Offline Offline

Activity: 28
Merit: 0


View Profile
May 24, 2014, 03:45:34 PM
 #3

学习了。
太少的技术普及帖了
Nadi
Member
**
Offline Offline

Activity: 64
Merit: 10


View Profile
May 24, 2014, 04:39:12 PM
 #4

学习一下。
thecoinjournal
Hero Member
*****
Offline Offline

Activity: 490
Merit: 500



View Profile WWW
May 24, 2014, 04:53:15 PM
 #5

基础知识帖有时候也要温故而知新。

Emotionze
Newbie
*
Offline Offline

Activity: 42
Merit: 0


View Profile
May 25, 2014, 12:30:09 AM
 #6

谢谢你的讲解
Nadi
Member
**
Offline Offline

Activity: 64
Merit: 10


View Profile
May 25, 2014, 12:50:16 AM
 #7

谢谢分享。
harson
Member
**
Offline Offline

Activity: 81
Merit: 10


View Profile
May 25, 2014, 01:23:26 AM
 #8

学习一下,谢谢分享。

TheSmurfsCoin. TconTcSC2fKuumjHf6W53iJA8x8zh7kYCy
leewhat
Sr. Member
****
Offline Offline

Activity: 294
Merit: 250


View Profile
May 25, 2014, 02:48:04 PM
 #9

学习了。
太少的技术普及帖了
学习,谢谢分享。。

uptweets
Full Member
***
Offline Offline

Activity: 154
Merit: 100



View Profile
May 25, 2014, 03:21:43 PM
 #10

有用,感谢分享,学习了
多学习,谢谢
wuhu883
Newbie
*
Offline Offline

Activity: 39
Merit: 0


View Profile
May 26, 2014, 02:37:54 AM
 #11

谢谢分享
firstblood
Full Member
***
Offline Offline

Activity: 238
Merit: 100


View Profile
May 26, 2014, 07:48:48 AM
 #12

密码学的概念容易被搞混淆,对大多数非专业人员而言,的确也情有可原。因为公钥、私钥、加密、认证这些,都是较为复杂的问题,其概念不太容易理解,理解不透就容易产生各种似是而非的概念,为了让大家对于密码学有进一步的了解,这里笔者就详细解说一下公钥和私钥的具体作用和使用方法。
加密和认证

首先我们需要区分加密和认证这两个基本概念。

加密是将数据资料加密,使得非法用户即使取得加密过的资料,也无法获取正确的资料内容,所以数据加密可以保护数据,防止监听攻击。其重点在于数据的安全性。身份认证是用来判断某个身份的真实性,确认身份后,系统才可以依不同的身份给予不同的权限。其重点在于用户的真实性。两者的侧重点是不同的。
公钥和私钥

其次我们还要了解公钥和私钥的概念和作用。

在现代密码体制中,加密和解密是采用不同的密钥(公开密钥),也就是非对称密钥密码系统,每个通信方均需要两个密钥,即公钥和私钥,这两把密钥可以互为加解密。公钥是公开的,不需要保密,而私钥是由个人自己持有,并且必须妥善保管和注意保密。
公钥、私钥的原则

一个公钥对应一个私钥。

密钥对中,让大家都知道的是公钥,不告诉大家,只有自己知道的,是私钥。

如果用其中一个密钥加密数据,则只有对应的那个密钥才可以解密。

如果用其中一个密钥可以进行解密数据,则该数据必然是对应的那个密钥进行的加密。

非对称密钥密码的主要应用就是公钥加密和公钥认证,而公钥加密的过程和公钥认证的过程是不一样的,下面我就详细讲解一下两者的区别。

基于公开密钥的加密过程

比如有两个用户Alice和Bob,Alice想把一段明文通过双钥加密的技术发送给Bob,Bob有一对公钥和私钥,那么加密解密的过程如下:

        Bob将他的公开密钥传送给Alice。
        Alice用Bob的公开密钥加密她的消息,然后传送给Bob。
        Bob用他的私人密钥解密Alice的消息。

上面的过程可以用下图表示,Alice使用Bob的公钥进行加密,Bob用自己的私钥进行解密。

1111

身份认证

身份认证和加密就不同了,主要用户鉴别用户的真伪。这里我们只要能够鉴别一个用户的私钥是正确的,就可以鉴别这个用户的真伪。

还是Alice和Bob这两个用户,Alice想让Bob知道自己是真实的Alice,而不是假冒的,因此Alice只要使用公钥密码,对文件签名,发送给Bob,Bob使用Alice的公钥对文件进行解密,如果可以解密成功,则证明Alice的私钥是正确的,因而就完成了对Alice的身份鉴别。整个身份认证的过程如下:

        Alice用她的私人密钥对文件加密,从而对文件签名。
        Alice将签名的文件传送给Bob。
        Bob用Alice的公钥解密文件,从而验证签名。

上面的过程可以用下图表示,Alice使用自己的私钥加密,Bob用Alice的公钥进行解密。

22222

谢谢辛苦了

Arvid
Member
**
Offline Offline

Activity: 66
Merit: 10


View Profile
May 26, 2014, 11:22:15 PM
 #13

谢谢分享。

TheSmurfsCoin. TvHG4VnmCkrQNYa8djding8fRPSANERsRg
Greer
Jr. Member
*
Offline Offline

Activity: 59
Merit: 10


View Profile
May 26, 2014, 11:25:43 PM
 #14

霍普金斯大学计算机科学系的Matthew Green对Darkcoin提出质疑,他认为混币的做法还是涉及到信任问题。这一点我同意。

TheSmurfsCoin. TsRn8efcnnSYwkRVRzuchPCkmzBeY9qf4F
Lynn
Member
**
Offline Offline

Activity: 70
Merit: 10


View Profile
May 26, 2014, 11:27:04 PM
 #15

问题也许真出在这里。有人恶意设置Masternode.
Judi
Jr. Member
*
Offline Offline

Activity: 59
Merit: 10


View Profile
May 26, 2014, 11:28:24 PM
 #16

Darkcoin正式发布通告,将再次进行硬分叉,移除Masternode支付系统,事故原因仍未查明。
Judi
Jr. Member
*
Offline Offline

Activity: 59
Merit: 10


View Profile
May 26, 2014, 11:28:49 PM
 #17

Mintpal交易所终止DRK交易。
cong
Member
**
Offline Offline

Activity: 112
Merit: 10


View Profile
May 26, 2014, 11:30:23 PM
 #18

昨晚就有点不详的预感,DRK是一个正在开发中的项目,升级频繁,肯定会有人错过升级,多版本钱包共同在线,冲突在所难免。当然分叉也许另有原因,DRK的网络稳定性将被严重质疑。Hirocoin的Automatic Checkpointing或许值得借鉴,只是会带来一定程度的中心化。哎。

Bwincoin - BBL5W3Cdygd7LTFYr465UFkopBByhzafVf
Pennington
Member
**
Offline Offline

Activity: 65
Merit: 10


View Profile
May 26, 2014, 11:31:58 PM
 #19

Darkcoin的Masternode未获得10%的挖矿收入,市场出现较大波动。这道槛今晚不知道能否迈过去。创新之路,艰难险阻,筚路蓝缕,期有所成。

GameleagueCoin: GKckjHriWZwXoR2f6kRZCYeYob9o3FKFwq
Bellefort
Member
**
Offline Offline

Activity: 61
Merit: 10


View Profile
May 27, 2014, 12:21:35 AM
 #20

学习一下,谢谢分享。
Pages: [1] 2 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!