Digital currency is a kind of currency which exists in the form of digital and is also called electronic cash or electronic money.The E-cash system proposed by David Chaum in 1982 is the earliest digital currency.Some new decentralized digital currencies such as Bitcoin have developed rapidly since the appearance of Bitcoin in 2008.The low issuance cost and strong liquidity of digital currency attract the attention of governments.However,most of the current digital currencies are issued by individuals or third-party institutions,which are of no value in themselves.Digital currency has attracted the attention of governments in many countries due to its low issuance cost and strong liquidity.However,most of the digital currencies are currently issued by individuals or third-party institutions and there is no value itself.The price is mostly determined by market expectations and the fluctuations are large.All types of digital currencies have different degrees of transaction anonymity,resulting in regulatory difficulties.The flexible transfer of funds and the uncontrolled number of issues may pose risks to participants and financial markets.Therefore,it is an important research direction to study a regulatory,low-cost,and highly liquid centralized digital currency(assets)that can be controlled and issued by a central institution.The paper analyzes the security issues in the distribution and circulation of centralized digital currency and designs a secure coding scheme for centralized digital currency,which provides a reference for the future distribution of centralized digital currency(assets).The main work of this paper is as follows:Firstly,the paper proposes a distribution and circulation model of hierarchical distribution of digital currency and central institution verification,as well as a feasible currency coding mode.The scheme satisfies many security attributes of digital currency such as the hierarchical distribution,multi-level anti-counterfeiting,controllable anonymity,divisibility and verifiability;Secondly,the paper designs a "one-time-pad signature algorithm based on combined public key" and a "proxy signature algorithm based on SM2" for the printer signature field in order to satisfy the hierarchical issuance nature of money and improve the security of the currency owner's signature.Then the paper designes a "message-based one-time-pad SM2 proxy signature algorithm"based on the above two algorithms.The key used for each coin signature is derived from the key matrix.As long as the number of leaked keys is less than the security limit of the system,the security of the whole system will not be threatened;Thirdly,the paper designs a "SM2 based public key recovery algorithm" for the owner field and the spender signature field in order to satisfy the controllable anonymity of coin and reduce transmission and storage overhead.The issuer set the owner fieldas blank after the coinhas been issued so that only the issuer and the owner of the coin know the ownership of the coin.When the coin's owner uses the coin,the recoverable signature algorithm is used to generate the spender signature and the coin returns to the issuer to do printing verification.The above four cryptographic algorithms and digital currency demonstration system are implemented based on Go language.As the analysis and test results show,in terms of security,the overall security limit of the system depends on the size of the key matrix in the one-time-pad signature algorithm and it satisfies the characteristics of hierarchical distribution of digital currency,controllable anonymity,multi-level anti-counterfeiting and so on.In terms of performance,the scheme has extra key derivation time compare to the standard signature algorithm,but the overall performance meets the requirements. |