Maison interface Web js tutoriel Comment implémenter l'adresse Bitcoin dans Node.Js

Comment implémenter l'adresse Bitcoin dans Node.Js

Apr 27, 2018 pm 02:27 PM
javascript node.js 地址

Cette fois, je vais vous expliquer Node.Js comment implémenter une adresse Bitcoin, quelles sont les précautions pour implémenter une adresse Bitcoin dans Node.Js, ce qui suit est un guide pratique Dans ce cas, jetons un coup d'œil ensemble. Jetez un œil.

En utilisant Node.js, l'IDE utilise sublime 3.

var randomBytes = require('randombytes')
var BigInteger = require('bigi')
var ecurve = require('ecurve')
var crypto = require('crypto')
var cs = require('coinstring')
var secp256k1 = ecurve.getCurveByName('secp256k1')
var randombytes = randomBytes(32).toString('hex')
var privateKey = new Buffer(randombytes, 'hex')
console.log("私钥:" + privateKey.toString('hex'))
var ecparams = ecurve.getCurveByName('secp256k1')
var curvePt = ecparams.G.multiply(BigInteger.fromBuffer(privateKey))
var x = curvePt.affineX.toBuffer(32)
var y = curvePt.affineY.toBuffer(32)
var publicKey = Buffer.concat([new Buffer([0x04]), x, y])
console.log("标准地址:" + publicKey.toString('hex'))
//compressed
publicKey = curvePt.getEncoded(true) //true forces compressed public key
console.log("compressed:" + publicKey.toString('hex'))
var sha = crypto.createHash('sha256').update(publicKey).digest()
var pubkeyHash = crypto.createHash('rmd160').update(sha).digest()
// pubkeyHash of compressed public key
console.log("pubkeyHash:" + pubkeyHash.toString('hex')) 
// address of compressed public key
console.log("压缩地址:" + cs.encode(pubkeyHash, 0x0)) //<-- 0x0 is for public addresses
//这里还缺失校验和Base58编码
console.log(cs.encode(privateKey, 0x80)) //<--- 0x80 is for private addresses
console.log(cs.encode(Buffer.concat([privateKey, new Buffer([0])]), 0x80)) // <-- compressed private address
Copier après la connexion

Générer une adresse Bitcoin

1. Générez une clé privée aléatoire La clé privée est un nombre de 32 octets. Par exemple :

<🎜. >8F72F6B29E6E225A36B68DFE333C7CE5E55D83249D3D2CD63 32671FA445C4DD3

2. Clé publique de calcul de courbe elliptique Après avoir généré la clé privée, nous utilisons l'algorithme de chiffrement de courbe elliptique (ECDSA-secp256k1) pour calculer la clé publique non compressée correspondant au clé privée La clé publique générée. est 65 octets au total.

0459DEE66AB619C4A9E215D070052D1AE3A2075E5F58C67516B2E4884A88C79BE9A5FA8CCD255FB0A7A75DB985072968C72B036 ED97BA2EF2DECE2ABCA5BE14 792

3. Calculer la valeur de hachage SHA-256 de la clé publique

ae9c74647a8c2f50fd832e397e36dbad05d86db3fe3d959a7c8a07c 1ddda40c6
< 🎜> 🎜>

0005f9d05358aab2a28f19910036e67a7295b14aac

En fait, c'est presque la même chose, qui est l'adresse compressée finalement générée par le code ci-dessus.

Mais dans le Bitcoin réel, la vérification est également ajoutée

6. Calculer la valeur de hachage SHA-256

9f35b0c37977a302512c22f586dd8da4ae1d20399f2ad3f75df23fbc024b4 b2d

7 . Calculez à nouveau la valeur de hachage SHA-256

4b4f9bc87616687957db64efaf4efb2c00d1d93d549a0b70b15812936046d0ac

8. Système hexadécimal à 8 chiffres)

4b4f9bc8

9. Ajoutez ces 4 octets à la fin de l'adresse de compression générée à l'étape 5

0005f9d05358aab2a28f19910036e67a7295b14aac4 b4f9bc8

10. Encoder avec Base58

Base58 se compose de 1 à 9 et de caractères anglais sauf i, l, 0, o. Encodez en base58 le résultat de l'étape précédente et obtenez :

1YbeKoyePe8gxyAYh4E3Qyqb15Nnepmod

Je pense que vous maîtrisez la méthode après avoir lu le cas dans cet article. Pour des informations plus intéressantes, veuillez faire attention aux autres sites Web chinois php Articles connexes !

Lecture recommandée :

Explication détaillée des étapes pour utiliser bootstrap dans le projet vue-cli

Comment AngularJs empêche les attaques XSS

Explication détaillée des cas de filtres personnalisés utilisant Filter dans AngularJS

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment mettre en œuvre un système de reconnaissance vocale en ligne à l'aide de WebSocket et JavaScript Comment mettre en œuvre un système de reconnaissance vocale en ligne à l'aide de WebSocket et JavaScript Dec 17, 2023 pm 02:54 PM

Comment utiliser WebSocket et JavaScript pour mettre en œuvre un système de reconnaissance vocale en ligne Introduction : Avec le développement continu de la technologie, la technologie de reconnaissance vocale est devenue une partie importante du domaine de l'intelligence artificielle. Le système de reconnaissance vocale en ligne basé sur WebSocket et JavaScript présente les caractéristiques d'une faible latence, d'un temps réel et d'une multiplateforme, et est devenu une solution largement utilisée. Cet article explique comment utiliser WebSocket et JavaScript pour implémenter un système de reconnaissance vocale en ligne.

Service après-vente Apple (adresse du point après-vente Apple) Service après-vente Apple (adresse du point après-vente Apple) Jan 11, 2024 pm 10:30 PM

Numéro de téléphone après-vente officiel d'Apple : Numéro de téléphone du centre de service Apple 24 heures sur 24 : 400-666-8800. Le numéro de téléphone du service après-vente pour les téléphones mobiles Apple est le : 400-666-8800. -627-2273. La ligne d'assistance téléphonique du service client d'Apple est le 400-627-2273 pour l'assistance après-vente ; le 400-666-8800 pour la boutique en ligne et le seul numéro de téléphone officiel d'Apple est le 400-666-8800. La hotline du service client d'Apple est le 400-666-8800. Vous pouvez appeler ce numéro pour vous renseigner sur le matériel, les logiciels et les accessoires tiers des produits Apple. Il convient de noter que le service client manuel d'Apple ne fournit pas de services 24 heures sur 24. Leurs heures de service sont de 9h à 21h (le dimanche, de 9h à 21h).

WebSocket et JavaScript : technologies clés pour mettre en œuvre des systèmes de surveillance en temps réel WebSocket et JavaScript : technologies clés pour mettre en œuvre des systèmes de surveillance en temps réel Dec 17, 2023 pm 05:30 PM

WebSocket et JavaScript : technologies clés pour réaliser des systèmes de surveillance en temps réel Introduction : Avec le développement rapide de la technologie Internet, les systèmes de surveillance en temps réel ont été largement utilisés dans divers domaines. L'une des technologies clés pour réaliser une surveillance en temps réel est la combinaison de WebSocket et de JavaScript. Cet article présentera l'application de WebSocket et JavaScript dans les systèmes de surveillance en temps réel, donnera des exemples de code et expliquera leurs principes de mise en œuvre en détail. 1. Technologie WebSocket

Où puis-je changer mon adresse Meituan ? Tutoriel de modification d'adresse Meituan ! Où puis-je changer mon adresse Meituan ? Tutoriel de modification d'adresse Meituan ! Mar 15, 2024 pm 04:07 PM

1. Où puis-je changer mon adresse Meituan ? Tutoriel de modification d'adresse Meituan ! Méthode (1) 1. Entrez Meituan My Page et cliquez sur Paramètres. 2. Sélectionnez les informations personnelles. 3. Cliquez à nouveau sur l'adresse de livraison. 4. Enfin, sélectionnez l'adresse que vous souhaitez modifier, cliquez sur l'icône en forme de stylo à droite de l'adresse et modifiez-la. Méthode (2) 1. Sur la page d'accueil de l'application Meituan, cliquez sur Takeout, puis cliquez sur Plus de fonctions après avoir entré. 2. Dans l'interface Plus, cliquez sur Gérer l'adresse. 3. Dans l'interface Mon adresse de livraison, sélectionnez Modifier. 4. Modifiez-les une à une selon vos besoins, et enfin cliquez pour enregistrer l'adresse.

Comment utiliser JavaScript et WebSocket pour mettre en œuvre un système de commande en ligne en temps réel Comment utiliser JavaScript et WebSocket pour mettre en œuvre un système de commande en ligne en temps réel Dec 17, 2023 pm 12:09 PM

Introduction à l'utilisation de JavaScript et de WebSocket pour mettre en œuvre un système de commande en ligne en temps réel : avec la popularité d'Internet et les progrès de la technologie, de plus en plus de restaurants ont commencé à proposer des services de commande en ligne. Afin de mettre en œuvre un système de commande en ligne en temps réel, nous pouvons utiliser les technologies JavaScript et WebSocket. WebSocket est un protocole de communication full-duplex basé sur le protocole TCP, qui peut réaliser une communication bidirectionnelle en temps réel entre le client et le serveur. Dans le système de commande en ligne en temps réel, lorsque l'utilisateur sélectionne des plats et passe une commande

Comment mettre en œuvre un système de réservation en ligne à l'aide de WebSocket et JavaScript Comment mettre en œuvre un système de réservation en ligne à l'aide de WebSocket et JavaScript Dec 17, 2023 am 09:39 AM

Comment utiliser WebSocket et JavaScript pour mettre en œuvre un système de réservation en ligne. À l'ère numérique d'aujourd'hui, de plus en plus d'entreprises et de services doivent fournir des fonctions de réservation en ligne. Il est crucial de mettre en place un système de réservation en ligne efficace et en temps réel. Cet article explique comment utiliser WebSocket et JavaScript pour implémenter un système de réservation en ligne et fournit des exemples de code spécifiques. 1. Qu'est-ce que WebSocket ? WebSocket est une méthode full-duplex sur une seule connexion TCP.

Qu'est-ce qu'un bail d'attribution d'adresse de routeur ? Qu'est-ce qu'un bail d'attribution d'adresse de routeur ? Feb 19, 2024 pm 11:37 PM

Le routeur est l'un des appareils très importants du réseau, qui joue le rôle de connexion de plusieurs appareils et de transmission de données. Dans la configuration du routeur, un paramètre important est la durée de location d'adresse (AddressLeaseTime), dont l'importance est cruciale pour la connexion et la gestion du réseau. Cet article présentera en détail la signification et la fonction du bail d'adresse de routeur. La période de location d'adresse fait référence à la période de temps que le routeur accorde à l'appareil connecté pour utiliser l'adresse IP. Une fois que chaque appareil est connecté au routeur, il obtiendra automatiquement une adresse IP temporaire. Cette adresse durera un certain temps.

JavaScript et WebSocket : créer un système efficace de prévisions météorologiques en temps réel JavaScript et WebSocket : créer un système efficace de prévisions météorologiques en temps réel Dec 17, 2023 pm 05:13 PM

JavaScript et WebSocket : Construire un système efficace de prévisions météorologiques en temps réel Introduction : Aujourd'hui, la précision des prévisions météorologiques revêt une grande importance pour la vie quotidienne et la prise de décision. À mesure que la technologie évolue, nous pouvons fournir des prévisions météorologiques plus précises et plus fiables en obtenant des données météorologiques en temps réel. Dans cet article, nous apprendrons comment utiliser la technologie JavaScript et WebSocket pour créer un système efficace de prévisions météorologiques en temps réel. Cet article démontrera le processus de mise en œuvre à travers des exemples de code spécifiques. Nous

See all articles