Friday, January 13, 2017

Atomic Verification Via Private Key Locked Bitcoin Transactions

The smart contract technology permits the creation of new protocols that can be implemented on top of bitcoin’s protocol itself. This signals the development of complex scripts, that are far beyond the requirement of a single digital signature. A research paper, which has been published a few days ago, introduced a new concept of private key locked bitcoin transactions, which represents an innovative type of transactions that permit atomic verification of a specific private key (which belongs to an asymmetric pair of keys) throughout the process of execution of the script.

Although the present hash locked bitcoin transactions permit the usage of a symmetric key to unlock the value of a transaction, or even a private key that belongs to an asymmetric pair of keys, considering that a private key can only be verified using the correspondent public key can inspire the development of a more secure and simple approach.

Symmetric keys are forms of arbitrary characters, as they are strings of bits. Consequently, the only way to certify the validity of a given symmetric key is to confirm that it successfully decrypts data which was initially encrypted using that same key.

On the other hand, anyone can check if a private key and a public key match a pair. This can easily be achieved using the Elliptic Curve Digital Signature Algorithm ECDSA; you just have to multiply, the integer that represents a given private key, by a base point on the elliptic curve, a predefined system parameter, which would result in a point on the curve that corresponds to the public key. The bitcoin protocol uses a secp256k1 implementation to formulate ECDSA operations which includes a mathematical function that multiplies a given generator by a specific scalar (secp256k1_ecmult_gen). This function is utilized to calculate ECDSA digital signatures.

No comments:

Post a Comment