原创 深入學習區塊鏈的隱私保護(三)Schnorr簽名

Schnorr簽名算法是由Claus Schnorr提出,是一個橢圓曲線上的簽名算法,我們回顧下素數域上一些術語: 橢圓曲線的階:橢圓曲線所有點的個數,包含無窮遠點; 橢圓曲線上點的階:若P爲橢圓曲線上的點,nP=無窮遠點,n取最小整數,

原创 深入學習區塊鏈的隱私保護(二)一大波盲簽名算法

    盲簽名是由David Chaum提出的一種特殊簽名方式,盲簽名允許消息擁有者先將消息盲化後,把盲化後的消息發送給簽名者進行簽名,最後消息的擁有者對簽名進行去盲因子處理,得到原消息的簽名。盲簽名就是接收者在不讓簽名者獲取所簽署消息具

原创 深入學習區塊鏈的隱私保護(一)概述

區塊鏈作爲公開賬本解決了各方信任問題,但卻帶來了一個新的問題:用戶的隱私如何得到保證?這在傳統的集中式系統中,不存在此問題,或者說只有“可信”第三方擁有上帝視角。如果在區塊鏈上用戶的交易信息被惡意敵手進行分析和利用,將給用戶帶來嚴重的威脅

原创 密碼學的成長之路(一)概述

  密碼學可以分爲古典密碼學和現代密碼學。古典密碼學主要關注信息的保密書寫和傳遞,以及相應的破譯。而現代密碼學不僅關注信息保密問題,同時還涉及消息完整性驗證、消息的不可抵賴性以及在分佈式計算中產生的所有信息安全問題。兩者最重要的區別在於,

原创 基於tcp協議的簡單多併發服務器-c語言

       tcp協議的基本情況在此就不詳細介紹,上圖是《UNIX網絡編程》書裏的一張圖,此圖直觀的展現了tcp服務器和客戶是如何開始通信、進行通信和結束通信的全過程。 一、套接字地址結構介紹      首先介紹Ipv4套接字地

原创 學習ECC及Openssl下ECC生成密鑰的部分源代碼心得

一、ECC的簡介 橢圓曲線算法可以看作是定義在特殊集合下數的運算,滿足一定的規則。橢圓曲線在如下兩個域中定義:Fp域和F2m域。   Fp域,素數域,p爲素數;   F2m域:特徵爲2的有限域,稱之爲二元域或者二進制擴展域。該域中,元素的

原创 BIGNUM轉換成16進制並用字符串保存以及md5算法基於c語言和openssl編程

     md5算法在openssl下的實現這裏就不具體說了,下面代碼的功能是隨機生成一個bignum類型的大數,將該大數(保存大數的部分是unsignedlong指針)轉換成16進制然後保存在字符串中,再把該字符串做md5運算,得到摘要

原创 如何在Xcode下引入openssl庫

第一步     將已經下載好的openssl頭文件(.h文件)和靜態鏈接庫文件(.a文件)放在兩個不同文件夾。      將兩個文件夾放入一個叫openssl(這個名字可以任意)的文件夾內。   !!!! 這裏要注意include裏面

原创 通過strace和monkey測試安卓應用的系統調用

配置adb1.    下載android studio2.    增加系統變量https://blog.csdn.net/lxzmmd/article/details/50455671 配置x86安卓虛擬機1.    https://ww