Quelle est la différence entre le script de rachat P2SH sur Bitcoin et sur Litecoin ?


Je construis un service basé sur des portefeuilles multisig. Mes progrès actuels sont que j’ai implémenté les multisigs pour le réseau Bitcoin et cela fonctionne bien. Maintenant, je suis sur Litecoin et je suis confronté à quelques problèmes et j’apprécierais toute aide ou conseil à ce sujet.

cela peut être lié au fonctionnement d’Electrum-LTC, je ne suis pas sûr. Je suis heureux d’entendre l’opinion des experts à ce sujet.

Sur le réseau Bitcoin votre portefeuille multisig est composé de 3 parties :

Quelle est la différence entre le script de rachat P2SH sur Bitcoin et sur Litecoin ?

ScriptSig

Signatures

0 ..

Utiliser le script

M ..

ScriptPubKey

Et cela fonctionne très bien avec ma mise en œuvre. Je peux générer 2 sur 2 multisig avec Electrum (btc) et le signer avec les deux clés, à la fois avec mon code et avec les portefeuilles Electrum. La transaction de résultat dans les deux cas est correcte et acceptée par le réseau.

Maintenant, pour Litecoin, j’utilise Electrum-ltc et le processus est exactement le même. Je peux générer avec succès une adresse multisig sur Litecoin

Supposons que j’ai le script d’échange suivant

L’adresse que je vois dans Electrum-ltc correspond à celle que j’ai générée moi-même et qui me dit que je suis sur la bonne voie.

Cependant, lorsque je chante une transaction avec un portefeuille, un script de rachat dans l’hexagone de transaction semble totalement différent et ne correspond pas à mon script de rachat généré manuellement.

Script d’échange généré manuellement

brisé

PubKey1

PubKey2

Et voici un script de rachat que je reçois d’Electrum-ltc une fois que j’ai signé la transaction avec une clé

brisé

Alors, qu’est-ce que cette chose au milieu? Et pourquoi ça ne correspond pas à mon script de rachat ? Est-ce un bug avec Electrum-ltc ou il me manque quelque chose. Apprécierait toute rétroaction.