1. 程式人生 > >SM2簽名驗籤資料分析

SM2簽名驗籤資料分析

SM2 簽名主機
匯出公鑰資料
pbKeyBlob.x
88 d7 58 da 4c 4e c6 be b1 3b 78 af cc df 66 84 
b9 e7 7a cc 4d 1c 58 9f e5 05 b8 b8 26 a8 25 7a 
pbKeyBlob.y
d6 28 2f 05 46 7a 0c 04 2e 4b 9f eb 76 1e 29 9d 
23 4c c9 26 2f d6 d1 78 28 eb 32 dd e1 18 01 8f 

puBuffer
64 61 74
SM3簽名值是
22 ce 81 74 6a 9e f6 e4 65 e5 e0 1d 5d 8f 90 59
c2 43 12 00 d7 b9 72 e3 4c 04 16 b5 b7 cc 35 37

pbSignature
41 50 c8 ee 42 e7 dd 7a 55 1d e2 4d 28 f1 45 0d
63 fb ac ea 84 9f 96 ea bf be 53 41 a2 e8 cf d6
85 fc 43 d4 c1 bb d6 c4 68 92 6e 4e 2d bb 25 00
cf fc 27 a2 c3 78 9d 4e 9b f1 59 8d c8 8d 5b ad

Sign OK.

SM2 驗籤主機
puBuffer
64 61 74
x
7a 25 a8 26 b8 b8 05 e5 9f 58 1c 4d cc 7a e7 b9
84 66 df cc af 78 3b b1 be c6 4e 4c da 58 d7 88
y
8f 01 18 e1 dd 32 eb 28 78 d1 d6 2f 26 c9 4c 23
9d 29 1e 76 eb 9f 4b 2e 04 0c 7a 46 05 2f 28 d6
pbSignature
d6 cf e8 a2 41 53 be bf ea 96 9f 84 ea ac fb 63
0d 45 f1 28 4d e2 1d 55 7a dd e7 42 ee c8 50 41
ad 5b 8d c8 8d 59 f1 9b 4e 9d 78 c3 a2 27 fc cf
00 25 bb 2d 4e 6e 92 68 c4 d6 bb c1 d4 43 fc 85
digest
22 ce 81 74 6a 9e f6 e4 65 e5 e0 1d 5d 8f 90 59
c2 43 12 00 d7 b9 72 e3 4c 04 16 b5 b7 cc 35 37
驗籤的結果是OK

相關推薦

SM2簽名資料分析

SM2 簽名主機 匯出公鑰資料 pbKeyBlob.x 88 d7 58 da 4c 4e c6 be b1 3b 78 af cc df 66 84 b9 e7 7a cc 4d 1c 58 9f e5 05 b8 b8 26 a8 25 7a pbKeyBlob.y

簡述簽名

相信很多開發者開發專案時初次遇到簽名驗籤概念都會疑惑,簽名是怎麼實現的?如何驗籤?要弄明白這兩個過程首先需要明確以下幾個基本概念:1、金鑰對:在非對稱加密技術中,有兩種金鑰,即公鑰和私鑰。2、公鑰:公鑰用來給資料加密,用公鑰加密的資料只能使用私鑰解密。3、私鑰:用私鑰來解密公鑰加密的資料。4、摘要:對需要傳輸

[Python3] RSA的加解密和簽名/實現 -- 使用Crypto

前言 關於非對稱加密演算法我就不過多介紹了,本文著重於python3對RSA演算法的實現。 正文 from Crypto.PublicKey import RSA import Crypto.Signature.PKCS1_v1_5 as sign_PKCS1_v1_5 #用於簽名/

Python pycryptodome的加解密、簽名使用心得

1、載入金鑰 key = Crypto.PublicKey.RSA.import_key(open(key_path).read()) 2、簽名與驗籤 用RSA-PSS using SHA-256舉例 def Rsa256_sign_data(data, rsa_key): try

利用SHA-1演算法和RSA祕鑰進行簽名(帶註釋)

  背景介紹 1、SHA 安全雜湊演算法SHA (Secure Hash Algorithm)是美國國家標準和技術局釋出的國家標準FIPS PUB 180-1,一般稱為SHA-1。其對長度不超過264二進位制位的訊息產生160位的訊息摘要輸出,按512位元塊處理其輸入。 SHA是一種資料加密

加密解密/簽名

1.非對稱加密解密會生成一對公鑰和私鑰,公鑰公開,私鑰自己持有. 2.加密是用來保證誰能獲取訊息明文 3.簽名是用來保證訊息是誰傳送的 4.加密解密,簽名驗籤都是用的非對稱加解密實現的,名稱和用法不一樣

ECC橢圓曲線、ECDSA簽名和ECIES加解密

ECC橢圓曲線詳解前言ECC英文全稱"Ellipse Curve Cryptography",與傳統的基於大質數因子分解困難性的加密方法不同,ECC通過橢圓曲線方程式的性質產生金鑰ECC164位的金鑰產生一個安全級,相當於RSA 1024位金鑰提供的保密強度,而且計算量較小,

C#實現RSA公鑰加密私鑰解密、私鑰加密公鑰解密以及Pcks12、X509證書加解密、簽名

RSA的私鑰簽名公鑰驗籤可以見http://blog.csdn.net/starfd/article/details/51917916,所以這裡就沒提供對應程式碼,具體程式碼如下: using Org.BouncyCastle.Asn1; using Org.B

簽名+(第三方)

紙質時代,當寫信,或者使用支票的時候,簽上自己的名字,就表示這是自己寫的,當別人拿到信的時候,如果認識筆跡,或者銀行拿到支票後,進行一系列驗證,驗證這個支票的真偽,前面的操作就是簽名,說明是自己寫的,後面的檢驗,就是驗籤,確認書寫者身份。 資訊時代,也有這方面的需要。 要確

深入理解簽名

數字簽名中,包含了兩個過程: 1.對要簽名的資訊,用指定的hash演算法,獲取資訊的hash值. 2.用私鑰,對hash值進行加密,輸出加密串(也就是簽名值). 以上方式也就是裸簽名,PKCS#1 驗證簽名: 1.對要簽名的資訊(也就是簽名原文),用指

【開發筆記】支付專案:1、證書加解密、簽名

最近做到了支付系統,由於對接第三方系統,涉及到證書籤名的問題,就抽時間瞭解了證書、私鑰、公鑰、簽名、驗籤等概念! 一、應用場景 首先需要了解HTTP和HTTPS        http就是網路的一種協議,伺服器與伺服器之間的資料互動,就用h

講講在銀聯電子支付工作時加解密、簽名的那些事(純粹的乾貨)。

        今天我們來講講系統間的互動需要哪些必要的東西才能確保互相通訊會沒有問題呢?首先來看看最傳統的系統互動,即兩者直接互相明文傳送,在這種情況下,若是被第三方攔截,會造成不可預估的影響。那麼針對這種情況我們應該如何避免呢?那好,我們來看看銀聯電子支付公司是如何解決這

RSA加解密與簽名

1.RSA介紹 1.訊息摘要 如果訊息改變了,那麼改變之後的訊息的指紋和原訊息的指紋將不匹配,如果訊息的指紋和訊息是分開傳送的。那麼接收者就可以檢查訊息是否被篡改過。但是,如果我同時知道了訊息和指

【微信支付】微信官方支付原始碼分析

1.背景 隨著微信的迅速崛起,在網際網路支付的方式中,微信支付成了舉足輕重的一部分。作為程式設計師,在朝著網際網路靠攏的途中,瞭解微信支付必不可少。此處,筆者分享一下微信官方對於微信回撥通知返回的xml資料進行支付驗證簽名的處理。 2.原始碼分析

SOAP訊息的簽名Handler

 TODO:SOAP訊息的簽名驗籤  現在需要解決的問題: 1、【2007-01-22】在Axis中,如果SOAP訊息攜帶附件的時候,由SOAP報文轉換成xml document時,解析報錯,導致無法正確簽名,SAX解析報錯org.xml.sax.SAXParseExcept

簽名自助排查

Q:SDK丟擲異常:“java.lang.NullPointerException: alipayPublicKey should not be NULL!”。 A:程式碼中支付寶公鑰(alipay_public_key)引數未賦值導致。請把支付寶公鑰賦值給該引數。教程 Q:SDK丟擲異常:“java.sec

IdentityServer4之JWT簽名(RSA加密證書)及

一、前言  在IdentityServer4中有兩種令牌,一個是JWT和Reference Token,在IDS4中預設用的是JWT,那麼這兩者有什麼區別呢?   二、JWT與Reference Token的區別  1、JWT(不可撤回)  

RSA加密、解密、簽名的原理及方法

二、RSA加密、簽名區別   加密和簽名都是為了安全性考慮,但略有不同。常有人問加密和簽名是用私鑰還是公鑰?其實都是對加密和簽名的作用有所混淆。簡單的說,加密是為了防止資訊被洩露,而簽名是為了防止資訊被篡改。這裡舉2個例子說明。 第一個場景:戰場上,B要給A傳遞一條訊息,內容為某一指令。 RSA的加密過

非對稱加密的簽名、加密和解密的Java語言實現

本文采用java.security包的簽名和驗籤。採用A的私鑰簽名傳送至B,B採用A的公鑰進行驗籤。 加解密可以私鑰加密、公鑰解密(或者公鑰加密、私鑰解密)。 一般用於銀行報文傳輸、支付寶、微信、銀行以及各大銀行的資料交換。 package com.example.demo; impo

幾個例子理解對稱加密與非對稱加密、公鑰與私鑰、簽名、數字證書、HTTPS加密方式

# 原創,轉載請留言聯絡 為什麼會出現這麼多加密啊,公鑰私鑰啊,簽名啊這些東西呢?說到底還是保證雙方通訊的安全性與完整性。例如小明發一封表白郵件給小紅,他總不希望給別人看見吧。而各種各樣的技術就是為了保障通訊的安全。(本文務必從上到下看) 1.對稱加密與非對稱加密 對稱加密: 對稱加密是