ECDSA短信签名


短信所发送的字节有限,一般为140字节左右,若对短信进行签名,会导致短信利用率降低,故短信签名的过程中,签名的长度很关键ECDSA 签名方式的在长度适中(根据加密算法位数不同而不同)的情况下,提供了很好的安全保障。另外手机短信一般不需要进行加密,因为手机一般处于移动状态,其网络变化,比较大,攻击者要截取并分析比较困难。

手机短信安全防护重点放在:防止被人修改

ECDSA常用签名算法

  • ECDsaP256, 其公钥长度 72 Bytes,
  • ECDsaP384,其公钥长度 104 Bytes,
  • ECDsaP521 ,其公钥长度 140 Bytes,

其中公钥最前面的8个字节是 附加字节。附加加字节的前4字节表示 “ECS1”、“ECS3”、“ECS5” 三种类型,后4字节表示公钥长度。例如256位的 ECDsaP256 算法,前面8个字节是 0x45, 0x43, 0x53, 0x31, 0x20, 0x00, 0x00, 0x00 ,前面4个字节 0x45,0x43,0x53,0x31 表示 “ECS1” ,后面4个字节 0x20,0x00,0x00,0x00 表示公钥是256位。

ECDsaP256签名

签名组成

对于ECDsaP256算法,其签名结果其实就是两个很大的整数r(random)签名s(signature),由于普通的数据类型不够,所以就用数组来表示,r和s都是32个字节的长度,总共是64个字节。

签名方法

一般ECDsaP256签名算法库都会提供两种签名方法:

  • 普通格式:就是两个32位整数组成的64字节串
  • ASN1格式:由ASN1编码而成的包含两个32位整数的70/71/72字节串

ASN1编码格式说明

ASN1将签名产生的 r 和 s 看作两个整数,若其第一个字节最高位为 1,则在整数前插入0x00。
以下是一个ECDsaP256算法签名结果:

byte[] signForIos = new byte[]{0x30,0x45,0x02,0x20,0x6C,0x80,0x22,0xE4,0xA5,0x89,0x8A,0x81,0xE9,0x82,0x0C,0x13,
                               0xC6,0xE7,0x09,0x95,0xC9,0x1C,0x4F,0x00,0x32,0x13,0x59,0xB2,0x2D,0xD3,0xEF,0xE4,
                               0x9D,0xDD,0x3B,0xAD,0x02,0x21,0x00,0xF0,0x84,0x9E,0x2E,0xB6,0x01,0x3B,0x2A,0x81,
                               0xB0,0x36,0x83,0x51,0x7F,0x20,0x56,0xD7,0xFB,0xD6,0x9B,0x76,0x38,0x39,0xF8,0xD2,
                               0x89,0xED,0x32,0x24,0x0D,0xA1,0x25};

其中:
第1字节:0x30表示一种通用的格式
第2字节:0x45表示后面跟了69个字节的数据
第3字节:0x02表示后面是一个整数
第4字节:0x20表示整数长度是32个字节

第35字节:0x02表示后面是个整数
第36字节:0x21表示整数长度是33个字节
第37字节:0x00需要忽略掉,这个是由于ASN1编码产生的,

参考文档:使用C#验证IOS9产生的ECDSA签名


版权声明:自由转载-非商用-非衍生-保持署名创意共享3.0许可证

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

推荐阅读更多精彩内容