区块链需要密码技术才能用吗,区块链密码技术有数字签名算法和什么算法
区块链需要密码技术才能用吗?答案是肯定的。区块链密码技术有数字签名算法和什么算法拓展,这些技术都是区块链的重要组成部分。今天,我们就来聊聊这三种关键的密码技术。
数字签名算法:数字签名是一种确保电子文件安全传输的技术,它可以确保文件在传输过程中不被篡改,也可以确保发送者的身份。它通过使用发送者的私钥对发送的消息进行签名,以确保消息的完整性和发送者的身份;接收者使用发送者的公钥来验证签名,以确保消息的完整性和发送者的身份。数字签名算法在区块链中起到了非常重要的作用,它可以确保交易的安全性和可信性。
哈希算法:哈希算法是一种常用的密码技术,它可以将任意长度的消息映射为固定长度的消息摘要,又称为消息摘要。它可以确保消息在传输过程中不被篡改,还可以用于验证消息的完整性。哈希算法在区块链中起到了非常重要的作用,它可以确保区块链上的交易安全可靠,还可以防止篡改。
共识算法:共识算法是一种用于确保区块链网络的安全性和可信性的技术。它可以确保所有参与者都能够达成共识,从而确保网络的安全性和可信性。共识算法有很多种,比如工作量证明算法(PoW)、权益证明算法(PoS)、拜占庭容错算法(BFT)等。它们都可以确保区块链网络的安全性和可信性,这是区块链发展的重要基础。
以上是区块链密码技术的三大关键技术,它们都可以确保区块链网络的安全性和可信性,是区块链发展的重要基础。如果您想要了解更多关于区块链密码技术的内容,可以关注我们的公众号,我们会不定期更新有关信息。
请查看相关英文文档
⑴ How to learn blockchain technology_How to understand blockchain technology
1. Technical language
Python and Go are two languages that are among many Technical language mentioned in company recruitment. Need to prioritize learning. Moreover, these two languages also have great applications in the direction of sliding technology outside of the blockchain. For example, Go is used in the background construction of large-scale concurrent systems, and Python is used in the construction of artificial intelligence systems. So learning these two languages is a priority.
2. Technical framework
Master one or more of Bitcoin, ETH and Hyperledger. Needless to say, BTC is written in C at the bottom level. A large number of currency projects, such as Litecoin, Dash, Monero, zcash, etc., all use Bitcoin technology for secondary development.
ETH is the representative of blockchain 2.0, and various application Dapps can be built on the ETH network. Nowadays, a large number of application blockchain projects are developed using the ETH platform.
Hyperledgerfabric is a blockchain development platform strongly promoted by IBM. It is mainly used for the development of alliance chains and is currently the most popular alliance chain development platform.
3. Algorithm
POW (Proof of Work Algorithm), POS (Proof of Stake Algorithm), PBFT (Byzantine Fault Tolerance Algorithm), etc. are all important in the cryptography part of the blockchain Composition, a full understanding of these algorithms will help you have a better understanding of the cryptography part when participating in the underlying development of blockchain projects.
(1) Blockchain requires cryptography technology. Extended reading:
Blockchain technology is a distributed accounting technology, and its characteristic is decentralization. , open and transparent, allowing everyone to participate in the establishment of the database, and each created data cannot be tampered with. With everyone participating, the problem of trust between strangers is solved.
Blockchain technology has emerged. It is an accounting technology that allows all people to participate. The transaction information and data between AB are made public and cannot be tampered with. Everyone knows this. happens, then there is no need for any authoritative third-party C, or everyone in the system plays the role of C. This is also called decentralization.
⑵ Encryption technology of blockchain
Digital encryption technology is the key to the application and development of blockchain technology. Once the encryption method is cracked, the data security of the blockchain will be challenged, and the tamperability of the blockchain will no longer exist. Encryption algorithms are divided into symmetric encryption algorithms and asymmetric encryption algorithms. Blockchain primarily uses asymmetric encryption algorithms. Public key cryptography systems in asymmetric encryption algorithms are generally divided into three categories according to the problems they are based on: large integer differentiation problems, discrete logarithm problems and elliptic curve problems. First, introduce blockchain encryption technology. Encryption algorithms are generally divided into symmetric encryption and asymmetric encryption. Asymmetric encryption refers to integration into blockchain to satisfyCryptographical skills required for security requirements and ownership verification. Asymmetric encryption usually uses two asymmetric keys, called public and private keys, in the encryption and decryption process. Asymmetric key pairs have two characteristics: First, after one key (public key or private key) encrypts information, it can only decrypt the other corresponding key. Second, the public key can be disclosed to others, but the private key is kept confidential, and others cannot calculate the corresponding private key through the public key. Asymmetric encryption is generally divided into three main types: large integer differentiation problems, discrete logarithm problems and elliptic curve problems. The problem class of large integer differentiation refers to using the product of two large prime numbers as the encrypted number. Since the appearance of prime numbers is irregular, solutions can only be found through constant trial calculations. The discrete logarithm problem class refers to an asymmetric distributed encryption algorithm based on the difficulty of discrete logarithms and strong one-way hash functions. Elliptic curve refers to the use of flat elliptic curves to calculate a set of asymmetric special values. Bitcoin uses this encryption algorithm. The application scenarios of asymmetric encryption technology in blockchain mainly include information encryption, digital signature and login authentication. (1) In the information encryption scenario, the sender (denoted as A) encrypts the information with the public key of the receiver (denoted as B) and sends it to
B, who uses his own private key Decrypt the information. Encryption of Bitcoin transactions falls into this scenario. (2) In the digital signature scenario, sender A uses its own private key to encrypt the information and sends it to B. B uses A's public key to decrypt the information and then ensures that the information was sent by A. (3) In the login authentication scenario, the client uses the private key to encrypt the login information and sends it to the server. The server then uses the client's public key to decrypt the authenticated login information. Please note the differences between the above three encryption schemes: information encryption is public key encryption and private key decryption, ensuring the security of the information; digital signature is private key encryption and public key decryption, ensuring the ownership of the digital signature. Authenticated private key encryption and public key decryption. Taking the Bitcoin system as an example, its asymmetric encryption mechanism is shown in Figure 1: The Bitcoin system generally generates a 256-bit random number as a private key by calling the random number generator at the bottom of the operating system. The total number of Bitcoin's private keys is large, and it is extremely difficult to traverse all private key spaces to obtain Bitcoin's private keys, so cryptography is safe. In order to facilitate identification, the 256-bit binary Bitcoin private key will be converted through the SHA256 hash algorithm and Base58 to form a 50-character long private key, which is easy for users to identify and write. Bitcoin's public key is a 65-byte random number generated by the private key through the Secp256k1 elliptic curve algorithm. Public keys can be used to generate addresses used in Bitcoin transactions. The generation process is that the public key is first hashed through SHA256 and RIPEMD160 to generate a 20-byte summary result (that is, the result of Hash160), and then converted through the SHA256 hash algorithm and Base58 to form a 33-character Bitcoin address. The public key generation process is irreversible, that is, the private key cannot be derived from the public key. Bitcoin’s public and private keys are usually stored in Bitcoin wallet files, among which the private key is the most important. Losing the private key means losing all the Bitcoin assets of the corresponding address. In the existing Bitcoin and blockchain systems, multi-private key encryption technology has been derived based on actual application requirements to meet more flexible and complex scenarios such as multi-signatures.
⑶ What technology does the blockchain apply to achieve this function?
The blockchain applies the following technologies to achieve
The first is the consensus mechanism. The commonly used consensus mechanism is mainly There are PoW, PoS, DPoS, PBFT, PAXOS, etc. Since there is no center in the blockchain system, there needs to be a preset rule to guide the nodes of all parties to reach an agreement on data processing. All data interactions must be carried out in accordance with strict rules and consensus;
The second It is cryptography technology. Cryptography technology is one of the core technologies of blockchain. Many classic algorithms of modern cryptography are used in current blockchain applications, mainly including: hash algorithm, symmetric encryption, asymmetric encryption, digital Signature etc.
The third type is distributed storage. Blockchain is a distributed ledger on a peer-to-peer network. Each participating node will independently and completely store and write block data information. The advantages of distributed storage compared with traditional centralized storage are mainly reflected in two aspects: data information is backed up on each node to avoid data loss due to single point failure; data on each node is stored independently, effectively avoiding Malicious tampering with historical data.
Smart contracts: Smart contracts allow trusted transactions without a third party. As long as one party reaches the pre-set goals of the agreement, the contract will automatically execute the transaction. These transactions are trackable and irreversible. It has the advantages of transparency, credibility, automatic execution, and mandatory performance. Blockchain technology has many unique features that make it a unique invention and give it unlimited horizons to explore.
⑷ What is blockchain technology? What is blockchain?
1. Blockchain technology
In a narrow sense, blockchain is a Time sequence combines data blocks into a chained data structure in a sequential manner, and is cryptographically guaranteed to be a distributed ledger that cannot be tampered with or forged.
Broadly speaking, blockchain technology uses block chain data structures to verify and store data, uses distributed node consensus algorithms to generate and update data, and uses cryptography to ensure data transmission and access. It is a new distributed infrastructure and computing method that uses smart contracts composed of automated script codes to program and operate data securely.
2. The meaning of blockchain
Blockchain is a new application model of computer technology such as distributed data storage, point-to-point transmission, consensus mechanism, and encryption algorithm.
(4) Blockchain requires cryptographic technology for extended reading
Three parts of the basics of blockchain technology
1. Point-to-point A network that transmits information between two parties is referred to as a P2P network. With this network, any node can send its own transaction information"Broadcast" to the network and obtain the contents of the general ledger.
2. Cryptotechnology. A combination of "public key" and "private key" is adopted to ensure the security of the trading account.
3. Consensus mechanism. That is, all nodes in the network need to reach a consensus on the blockchain algorithm, and nodes do not need to trust each other. The information calculated through the algorithm can ensure reliable transactions and secure data storage. At the same time, every new block generated by a node needs to be recognized by more than 51% of the entire network before it can be added to the blockchain of the entire network and form one of the historical records of the general ledger that cannot be tampered with.
⑸ What technology development is needed for blockchain?
What technology development is needed for blockchain:
1. Blockchain theory: Blockchain developers must understand the blockchain Theoretical knowledge and familiarity with it are the most basic requirements for a blockchain developer. The content includes blockchain network architecture, decentralization and other related application technologies. Expanding technical theory is mastery of Ethereum development.
2. Smart contract: Smart contract is a string of codes that blockchain developers need to write in blockchain programming language. It is a trust mechanism developed after imagining logic according to different scenarios, aiming to eliminate the intervention of third parties. Create an efficient and high-trust blockchain network. Blockchain developers need to realize automatic execution of this string of code, and the operation effect is irreversible.
3. Cryptography: Many blockchain application scenarios have high encryption, and point-to-point encryption mode is a characteristic of cryptography. By studying cryptography, blockchain developers understand encryption concepts such as wallets, keys, and a wide range of encryption and decryption technologies
4. Distributed architecture: Blockchain developers must understand the functions of distributed architecture and networks . Decentralized network is the foundation of the blockchain architecture. The transmission of information in the blockchain network must follow a decentralized approach so that everyone can enjoy the same network rights.
⑹ The cryptographic technology of blockchain includes
Cryptography technology is the core of blockchain technology. The cryptographic technology of blockchain includes digital signature algorithm and hash algorithm.
Digital Signature Algorithm
Digital signature algorithm is a subset of the digital signature standard, representing a specific public key algorithm used only for digital signatures. The key is run on the message hash generated by SHA-1: to verify a signature, the hash of the message is recalculated, the signature is decrypted using the public key and the results are compared. The abbreviation is DSA.
Digital signature is a special form of electronic signature. So far, at least more than 20 countries have passed laws recognizing electronic signatures, including the European Union and the United States. my country's electronic signature law was adopted at the 11th meeting of the Standing Committee of the 10th National People's Congress on August 28, 2004. . A digital signature is defined in the ISO 7498-2 standard as: “Some data appended to a data unit, or a cryptographic transformation made to the data unit that allows the data unit to beThe recipient is used to confirm the source and integrity of the data unit and protect the data from forgery by others (such as the recipient). The digital signature mechanism provides an authentication method to solve the problem of forgery, denial, impersonation and tampering. and other problems, using data encryption technology and data transformation technology to enable both parties to send and receive data to meet two conditions: the receiver can identify the identity claimed by the sender; the sender cannot deny the fact that it has sent the data in the future.
Digital signature is an important branch of cryptography theory. It was proposed to sign electronic documents to replace handwritten signatures on traditional paper documents, so it must have 5 characteristics.
(1) The signature is trustworthy.
(2) The signature cannot be forged.
(3) The signature cannot be reused.
(4) The signed file cannot be changed.
>(5) The signature is non-repudiation.
Hash (hash) algorithm
Hash is to transform input of any length (also called pre-mapping, pre-image) into A fixed-length output, which is the hash value. This conversion is a compressed mapping, in which the space of the hash value is usually much smaller than the space of the input. Different inputs may hash to the same output, but it cannot be deduced inversely. Outputs the input value. Simply put, it is a function that compresses a message of any length into a message digest of a certain fixed length.
Hash algorithm, which is a one-way cryptosystem, that is, it is An irreversible mapping from plaintext to ciphertext, there is only an encryption process and no decryption process. At the same time, the hash function can change the input of any length to obtain a fixed-length output. This one-way characteristic and output of the hash function The fixed length of data allows it to generate messages or data.
Represented by the Bitcoin blockchain, secondary hashes are used many times in the workload proof and key encoding processes, such as SHA(SHA256( k)) or RIPEMD160 (SHA256(K)). The advantage of this method is that it increases the workload or increases the difficulty of cracking when the protocol is not clear.
Represented by the Bitcoin blockchain, it is mainly The two hash functions used are:
1.SHA-256, mainly used to complete PoW (proof of work) calculations;
2.RIPEMD160, mainly used to generate Bitcoin addresses. As shown below Shown in 1 is the process of generating an address from a public key in Bitcoin.