群签名,环签名,盲签名,数字签名

互联网世界签名

数字签名

类似在纸质合同上签名确认合同内容,数字签名用于证实某数字内容的完整性(integrity)和来源(或不可抵赖,non-repudiation)。

实际应用中,由于直接对原消息进行签名有安全性问题,而且原消息往往比较大,直接使用RSA算法进行签名速度会比较慢,所以我们一般对消息计算其摘要(使用SHA-256等安全的摘要算法),然后对摘要进行签名。只要使用的摘要算法是安全的(MD5、SHA-1已经不安全了),那么这种方式的数字签名就是安全的。

数字摘要

顾名思义,数字摘要是对数字内容进行 Hash 运算,获取唯一的摘要值来指代原始数字内容。 数字摘要是解决确保内容没被篡改过的问题(利用 Hash 函数的抗碰撞性特点)。数字摘要是 Hash 算法最重要的一个用途。在网络上下载软件或文件时,往往同时会提供一个 数字摘要值,用户下载下来原始文件可以自行进行计算,并同提供的摘要值进行比对,以确 保内容没有被修改过。

看一个具体场景:

1,小明对外发布公钥,并声称对应的私钥在自己手上

2,小明对消息M计算摘要,得到摘要D(digest)

3,小明使用私钥对D进行签名,得到签名S(signature)

4,小明将M和S一起发送出去

接收方,验证过程如下:

1,接收者先对消息M使用跟小明一样的摘要计算方法,得到摘要D‘

2,使用小明的公钥对S进行解签,得到摘要D

3,如果D和D’相同,那么证明M确实是小明发出的,并且没有被篡改过

数字证书

数字证书用来证明某个公钥是谁的,并且内容是正确的。

对于非对称加密算法和数字签名来说,很重要的一点就是公钥的分发。一旦公钥被人替换(典型的如中间人攻击),则整个安全体系将被破坏掉。

怎么确保一个公钥确实是某个人的原始公钥?

这就需要数字证书机制。

顾名思义,数字证书就是像一个证书一样,证明信息的合法性。由证书认证机构(Certification Authority,CA)来签发,权威的 CA 包括 verisign 等。

数字证书内容可能包括版本、序列号、签名算法类型、签发者信息、有效期、被签发人、签发的公开密钥、CA 数字签名、其它信息等等,一般使用最广泛的标准为 ITU 和 ISO 联合制定的 X.509 规范。

其中,最重要的包括 签发的公开密钥、CA 数字签名 两个信息。因此,只要通过这个证书就能证明某个公钥是合法的,因为带有 CA 的数字签名。

接着上次的应用场景做假设:

1,现在有第三者小红,小红想欺骗接收者,她偷偷使用了接收者的电脑,用自己的公钥换走了小明的公钥

2,此时接收者实际拥有的是小红的公钥,但是还以为是小明的公钥,因此,小红就可以冒充小明,用自己的 私钥做成“数字签名”,发消息给接收者,让接收者用假的小明公钥进行解密

3,后来,接收者感觉不对劲,发现自己无法确定公钥是否真的属于小明。他想到了一个办法,要求小明去“证书中心”(Certification authority, CA),为公钥做认证。

4,证书中心用自己的私钥,对小明的公钥和一些相关信息一起加密,生成数字证书(Digital Certificate),小明再发消息,只要在签名的同事,再附上数字证书就可以了

5,接收者收到消息后,用CA的公钥解开数字证书,拿到小明的真实公钥,然后就能证明“数字签名”是否真的是小明的。

下面看一个应用“数字证书”的实例:https协议,这个协议主要用于网页加密。

1.首先,客户端向服务器发出加密请求。

2.服务器用自己的私钥加密网页以后,连同本身的数字证书,一起发送给客户端。

3. 客户端(浏览器)的”证书管理器”,有”受信任的根证书颁发机构”列表。客户端会根据这张列表,查看解开数字证书的公钥是否在列表之内。

4.如果数字证书记载的网址,与你正在浏览的网址不一致,就说明这张证书可能被冒用,浏览器会发出警告。

5. 如果这张数字证书不是由受信任的机构颁发的,浏览器会发出另一种警告。

6. 如果数字证书是可靠的,客户端就可以使用证书中的服务器公钥,对信息进行加密,然后与服务器交换加密信息。

多重签名

n 个持有人中,收集到至少 m 个(n≥1)的签名,即认为合法,这种签名被称为多重签名。

其中,n 是提供的公钥个数,m 是需要匹配公钥的最少的签名个数。

群签名

1991 年由 Chaum 和 van Heyst 提出。群签名属于群体密码学的一个课题。

群签名有如下几个特点:只有群中成员能够代表群体签名(群特性);接收者可以用公钥验证群签名(验证简单性);接收者不能知道由群体中哪个成员所签(无条件匿名保护);发生争议时,群体中的成员或可信赖机构可以识别签名者(可追查性)。

Desmedt 和 Frankel 在 1991 年提出了基于门限的群签名实现方案。在签名时,一个具有 n 个成员的群体共用同一个公钥,签名时必须有 t 个成员参与才能产生一个合法的签名,t 称为门限或阈值。这样一个签名称为(n, t)不可抵赖群签名。

环签名

环签名由 Rivest,shamir 和 Tauman 三位密码学家在 2001 年首次提出。环签名属于一种简化的群签名。

签名者首先选定一个临时的签名者集合,集合中包括签名者自身。然后签名者利用自己的私钥和签名集合中其他人的公钥就可以独立的产生签名,而无需他人的帮助。签名者集合中的其他成员可能并不知道自己被包含在其中。

盲签名

1983 年由 David Chaum 提出。签名者在无法看到原始内容的前提下对信息进行签名。

盲签名主要是为了实现防止追踪(unlinkability),签名者无法将签名内容和结果进行对应。典型的实现包括 RSA 盲签名)。

HMAC

全称是 Hash-based Message Authentication Code,即“基于 Hash 的消息认证码”。基本过程为对某个消息,利用提前共享的对称密钥和 Hash 算法进行加密处理,得到 HMAC 值。该 HMAC 值提供方可以证明自己拥有共享的对称密钥,并且消息自身可以利用 HMAC 确保未经篡改。

HMAC(K, H, Message)

其中,K 为提前共享的对称密钥,H 为提前商定的 Hash 算法(一般为公认的经典算法),Message 为要处理的消息内容。如果不知道 K 和 H,则无法根据 Message 得到准确的 HMAC 值。

HMAC 一般用于证明身份的场景,如 A、B 提前共享密钥,A 发送随机串给 B,B 对称加密处理后把 HMAC 值发给 A,A 收到了自己再重新算一遍,只要相同说明对方确实是 B。

HMAC 主要问题是需要共享密钥。当密钥可能被多方拥有的场景下,无法证明消息确实来自某人(Non-repudiation)。反之,如果采用非对称加密方式,则可以证明。

-

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,835评论 4 364
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,598评论 1 295
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,569评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,159评论 0 213
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,533评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,710评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,923评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,674评论 0 203
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,421评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,622评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,115评论 1 260
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,428评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,114评论 3 238
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,097评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,875评论 0 197
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,753评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,649评论 2 271

推荐阅读更多精彩内容

  • 摘要 本白皮书介绍了加密和公钥基本结构(PKI)的概念和使用 Microsoft Windows 2000 Ser...
    陈sir的知识图谱阅读 927评论 0 1
  • PKI 基础知识 (摘自Microsoft Windows 2000 Server白皮书,2000年7月5日发布)...
    right_33cb阅读 912评论 0 1
  • 前言 文中首先解释加密解密的一些基础知识和概念,然后通过一个加密通信过程的例子说明了加密算法的作用,以及数字证书的...
    sunny冲哥阅读 2,874评论 0 2
  • 每一个物业人员刚刚进入物业行业的时候,全都是雄心万丈,一心想有一番作为,并且他们也为他们的梦想付出努力了。...
    丿火花灬阅读 1,069评论 0 1
  • 1、早上跟我妈唠叨:“老周昨天给我买了两兜子挂面,买那玩儿干啥,我又不会下” 我妈沉默了一会……“挂面都不会下,吃...
    丿佐沉阅读 255评论 0 0