Elementsd wallet crash when dealing with blinded assets, but with explicit values.
In elements 0.21.0(and possibly future versions)
elementsd: wallet/wallet.cpp:5575: void CWalletTx::GetBlindingData(unsigned int, const std::vector<unsigned char>&, const CConfidentialValue&, const CConfidentialAsset&, CConfidentialNonce, const CScript&, CPubKey*, CAmount*, uint256*, CAsset*, uint256*) const: Assertion `conf_value.GetAmount() == amount' failed.
This occurred when trying to use gettransaction on a transaction whose output has explicit value but blinded asset.
To reproduce, send money to wallet-controlled address with an explicit amount, but confidential asset.
:( we really need to rewrite the wallet blinding logic
Do you have the transaction? Curious what the offending output(s) look like.
02000000010215caf2ab58f280503444d3e746815de31c5004aa59a10eeef800cc199ab083700000008000ffffffff000000000000000000000000000000000000000000000000000000000000000096409ec9797b57ba15a40ca4f7f9409b9af7f631cc09af48423d504edb7b4c6e00010000000000000001325f5dc353498b939971cfd18f32cdff8035d587aee8c9d10f38afbf53ad84fb0000008000ffffffff000000000000000000000000000000000000000000000000000000000000000096409ec9797b57ba15a40ca4f7f9409b9af7f631cc09af48423d504edb7b4c6e00010000000000000001040b9e1618e611c906b1753316ff1e25b301782c0caa3c0d39f0fd9d9e2a77b19ee20916873e3c8ea460658374b137c330731b37cae8b9964b8877221a20a1f057d59003fb3ece37096ce493d1e9a94289cdd1bb1952adff57dede17d4dec5823b0cc9c01600144d2d37e60ae4ecfd1849a02e8d4e7bde8c9709ca0125b251070e29ca19043cf33ccd7324e2ddab03ecc4ae0b5e77c4fc0e5cf6c95a0100000000000003e800000ad0bd6a88b9cb1908199a995e1fbf6591df6af4875389f7053b02dd74efc89fb4010000000000000001002251202009cdccbff1f27f759201f86813a5fd421ca116025f5f8d43d7fe165a4d76250a47c15011ba3ba19cf676d0c0e07f57108c11831a65f20265abbc6af8c68af76e010000000000000001002251202009cdccbff1f27f759201f86813a5fd421ca116025f5f8d43d7fe165a4d76250000000000000247304402206a6d7d3af51e1ac37574e913c5961ec71b3f517a5c129279685d240c59d18f9c022067d74bcc21efc43c05e22d9201ed6bb332214e1cbf41ff3862159e6a6b4cbe650121026096800a314aa26a0944af6693bd20ab2d572e6b91c77b354aa14de0573fa4370000000247304402203ac702663c6e09943e6ad80696db6430e2668612b2b27d11e1af9f64ae3584fb02204ffbef35ff4208a255183d88fa269b8d240e3c8028e58323166bdec000b097c701210323ff2d7ff4e7ed010c38878a5826a609ca4124dff044b80fe0be802b3b3c4c73008304000be73633bd42eedd5018d4c52a02faa6b9afe8af3d6d5d14c1be22ad05a327c770bd73f43cbde2185090f85e50546d894ead4d712a148fec907db8400675534dcb3356ee14bd51b3c37f6bbf6ff3c71c06ffceca745350209a63d9f6f8ca4ba6a54d4ff6c901b2023d43e0e3617036090fcd6d958270ed2fa62b4c190e281817adfd4e10603300000000000000012ba98e0049edf470fb4bdb6623882ca4d451869a5a45c6f2fae23333ff684fe20542256ede05a5fe6a52e9cf3bb6d66d789249bf39b051ab27aae09d5f7d22208673dfd43bc4c0907f19e182378f802a9c30b0e33a0a8cf75b9b2a10757a9a9ddc644256f28362653eaad00273daba0524cd4993e76a59a118603f31103a6c6db33714234cf14840cd2e1b7265bcce3f6efecadba279f3975ab5b077c137d5709dc5ee3d48b96df43cc7192374a4f27fa25368d13a19a23e83fe5ee8e72fa7af11919a7eacfca8ac16cdc8a6b263bb086c86085131b28518fbab8735adc52886d0fd688d3fcb961c68306ce67ed21124f038648ef24834e7e4476bd68dd173517410cd9763fba8df01400d529bc2ec526082d73c78552d39305ac21aa5e06e2334dd6257f8bbb90bc06bfba5c9204c957c5736582e641d8682b05f9b4394f826493020ce6159b0a18477548bbbb0cf556dfb0f3f137b607ff208e1b1a2d00501bda3e7545bdeb3f82982de1783a2802ddf9224bae89a2609c6013455cdb76c3d11b2f424ca644267d17b49494322e423d04edd9147d847ab5f8d794036475f3fa7c60b08deac3df7f539f717607dc3dcd73f39f192936136fb63d5850a8b49f81d5a3d95dfa98d998b60cd8fae03b3bb740f4918244a2132238c5b658cff00a6acbe0caad6efdbeb97ca48c92ec5b3a4735f42316b1bf345ce7447a987622ad5c0169d4f6f04a0b70773eaf172d0595c0d39e5dc26e04c4e58586648dea97be3f5330018c55b184e1d339869970ce70738fdbee504950a87dfd4312be3069f485326606ab7d912cf238376568175a9d1fc6b0bd025de42b347bae36d4df705a2846e3255bdcf07d7eaf525673d94ac7bea4cff932788e83956aec00f24f8a7d4b1c2a4271943aa7897105fac1612da3d8cdd47063cd9530f620f96d9e16a348c7552878d88528e64a2cc483bd05bd831d3f66f4226aaea90e020d3a64a3611ae6f050940ee858cbb2c1b85358dfd00b99d81ebaaf9a442a3122492fe3ee9bee111a3917aeee9479ce3402643b882f31319a04f876019608d19c03d845285299b5f85c22f5c0927c0f31fce42ebc37e4b41355aa06cbced5151c05ac3e29bff430a5a434d2a56960cb66deeb20cc4c7f641a1730b88250c1cee245e92b23196235aefa0b157a8f9d9bdc2c7f02849c41bfeb3370249db75ead37d09e25b07e8c759f670d80bd2670e9342c7fc48279b292fbeb6c5a75051b3fa0950a145b5283299b8b09b2eb4a6c2c581cd2d02ae01b756e70d7c94d10df3c08c5dd74c92bc387386726786697bd55380e8507a16d2319f7bf3123e30cba2086dc2a827df19e35457b56796c09584ef6b1842229fc94c9064030c11ac1b33f93dca0cd1afb5eae9d1e497e31537f32d8112c5c649ff9ada91a9a33066a0533d9d7c49a14dfffe28bb6d6518c2e927a82cf779f80f541d0c8b692bb92047eb66e39a3feceb1580912c8bbb33eef88fa66d3634b15ce91b65302b71c0d904aa06a75e9f1cf6552eda892efec5173c1b5c4766de8245aabbf2494491d34be3438a50918a57d98d0b91be2eb928a96225838f1e7eca46483a4c41edce716058ba74929f485e575966dbdd16d5c269db3207117569751809a171cffcc289762184be08d3b656df5cc412e3e0d1574bd138dc642bdc89a874ea0b57108c4638e02a277c89fc311166e0df6ed7a4125bc11f0e540d73b6ee183b98ca37a7b0da41e25146ce5c56a960b0629513359c8d1beac48d2b632934cd674f3aa1ef3ed2b85830edf1ce440cff2c8d6c0a7d290b1080d24ea1c0571bf551d5e3d345f57ba541695b9a94ddb37ab5352d98d5b6f52944b81c88fbda3dd370fac5017dc6621c5d70b094c702b9c78b402b96b44796f2f7a504987023faf180134a3554ce9e64ebbe6bbf336675e06bcf78573d8f4b51dbe97081e259c99d59364ef98eb29b9553ac537231037e313755cf3a0e1b102314ab38ac4bd8dc0719870a4c191e5706e2a7a095ba13f3c641f8600cbca2eef59a34ec73894576a77b61dfb33a806e59d12f2627f80891c45acf65923cee23b29fe74f7114c4768b243dd605309bca66e95e635ec80373f9904e2d8e158d53e8698d36aa8335b68e2b7e8a523a84ee7dd052095c939981e8dcec498f80ff5268648bf6ec7e5fe4dae70c62ed98ea047a3603c5a948183a4e3435825fd7c960ff20deeb426452b5c1ae1b68ac8f839840f9c4bc8081c90c4b648e490602a3ffbe192c160654121ea5eaf68053c61bc8901dfe577a23042469a91515ef0a9d7af3aaa4d5b221cd74d8b9704f7403c0d3d8e3de561bf99272bd47b4682fed77437d55d665ca0c95b306ca57f078411b07998a3d13b70a1e87b61b97bf2e8de1f1109736e7e72bb844c6f63d85d469e7201ddb17f8c992d12a7fe3951be6fbf76d2cf89ab5d26b4492a638fcb75104c2b0af308cbc9f9ae3eb537fd2046b17b15ca12f022d9c706e360978ac443d9c8e89d27c07883a1219a0bb16b72b64060c8a22944be21c7e7b073c61102b6455f1b849f16a7db876d7a54ea12d8547a60ed0e8166587ca1b0bb17a6b353e474292b8d65181bf733313caa51d6e7c08c92c33d1a845822422dce20f44ffba3525dbeffbefc22dee3af95b2a0a283d1370a096af68b78e40ef7a7c0277f94d628c4ab41f2929ac007a5ebb11d5c7287c9f074e0f29a1fb7e0b1a939bb10ef10aedf59de8b71b37581554d94d3431fd1d439ca04f4e2fa5f18e797af129d775e738a92fc297e002e5c91a694ae5fadc5e64f2977a1dab8b5134f00748eba7c4fb51f096a31290dc1b28a1fd53c753e3429251400f17824712c5242a3b125e1704cd70725163253f1a1130b2562ca9bc96419a0b588e659fe8e62eab186c69f176ad269ed06c9a2afca049bb7b5e5fa89896b5c43e009144238a23433aa6cff7dd1ea706a3fae2a498a1df87f399ccfd7c08b8cb7d7ab0571c8f78b51966f62ce62c6836e48857f1121788b28c982195bfbe8ff84a2c4e1865a7d555512093ac1139242004ffdb166de8cb6bed466e7eae000a06996282e6c8004e8c082b101561652d2622dfb22e62d6a03fafd0db9944eff7226e9c93a207c886df51510cdee9b61e24176b427bbb07196d8b4307b40a892961bb90e90c4911809fda9e58baa92c41e25cd3e8a66d0b975a021497065157b624fac6f0438e4d2bb7712ad996b348427e94f4c6a601c5f644bf2a161c514f360e026ac5920e536e9802eda74ff3904ea190305f6d11163ee4c5c30b1fd005bab255862269800861d020fc70521d5d95844ab981b438a0ef6079c0c6f342695afdefb823a0e991425d489e2ec09403f85cb7be12aa8cfc67677f76f37262118f76bf764d46a3c5a500fb5df817b4ca2cee9ef766ae08163d8f59492d27f370cc644e47589f321e0b7599216e532ba419bdcd0d03e5d0af00b2722e188b1c77743ff913ce34436b2d3e1d1103d3e32462e0476fdbeb4b10e8e2408b224563e52adeb2b541c4292ed9a3702ea27b75adeed09d85651b1feaf06269c4a7f9b9c1602b5988c6a6c5c2544d47a10214c986648fbcdcc175c59ad448a87e548177d2eb120b8d21791fdde1edb73a813f85c9812d7eca496d5228af5786c1613e707f82bbe5c72669deb50bb0aa694127cf667420275fd422d2da6faa5c3bfbf0bdcae84a5ba030eccf1cbd92063d846d72e48c4bbddbf6d3af2082f411b5e5c8149591dac099da14a04a1b5cc86f6f473c8c6afbe8e1b82a351f5745cc3405607a21a1f1b7914f7a807c5142c66c0386cd27b9dbf98b4a2330502d6708729357d614225b36e3b4d763715b18a8062461be878a8b50ced0fa40e36042718061b6282c5f58aa906c56313524658546b3bce8efd19fe6d3c971e82898dbdc99df1c4d1792013f775957f57bf414a9f25611dd0f3a5f99a0dd646ce63cdad0861ba9af90b8101323b6913d85be51733b00abc99871be66c9cd9cadfc8c2c63c6df19b2237f53b7cb56827f5210daf65242178377d26d9450912109f4150073645bc10d79071e76d74750ff6095bc5e65ed04a5303a7590d1348d0000b49303678e74158201a5ebbdadb496e0a80d12790b137f61a97c81684e599e5635fe28c33511c8d44d21cbaf415a1bf9d3dea87be2918067643e5abb71111b8f3e63ea651b061c6666a5c2e9ea1d840b1c5c80f9d08d7a6dbde1f8d714d283d62dea0b7305bdd3463c4fcdf833fbe984bfd2c9e45e072e09b61f83f60f71603ffea827b6ae3f4860ab1b9a3a8250e4e9e11e0d56331c900f5b161f37a330d5e57af0a6dea0b3cf50c730325117d71115f65cd761a3407ac728e46e2aee4c456545d78070d7eac684edeed4b09e237d5f2a33c5dea6ceda5c0215b5f4539fb97223640502bc62d244bf76e5ca432267947f699e25786197a943c5ac0ac607225f0266b3561b93626a3f90f90d82f75465487f3cb01d96b6c35aab8c5ff15632a18e24ec21c0d80162bc4da00c4683d6ee11956ee5018e2b8a339a5b97ceaa4e1f99a4fecb087ab993961f2de738dcaada9a2c7bef3a47966c4ebf85c782e2b493a699bc2d0c18389a9cc83204d174fb007b73d077493e8837c55c4131803d2073d72ea1da03e8efbfea8a07a200abbbece76d7983870fb819d9485ebc7e31177eb1c39b475b7f58c4fed0cde6b4ee49a1cde6ae8483b1841a9708662adf0101eebe632eeed2fff94e42e087d0dadff72519d98a653380fd829d627facaf12d495ac27c93bc4097ba26a6b699493c8691664e000459cc009d44eca92238d5cdd3798c3bca35f97395d3aae0ee9cce4e0cf1262588e13d9b011273c3d464b66ec53d07a61af21bc71e499653dd36d20e662378a8d6a52656880eac9423ec1b3bb52b5e3f6fb9fb6d0fbf544e4dd32921d0a6bd7649a76ff0a0249f9e9089d5feadb25af2c20b79f9b1c7c4555b2d7671ad86763f144929c24bb02e2229aa79dab9fe60e20825a6eeddaf5326f6031e7f9335bf5baa0bfe9f02e22ec88f24503be4728d8702df42fc8b227693495cd1fb394ec0b287dc0b876fd8829cfe7712703b903842bfb95fb38f457813fbfad5c35dbc4689204d0de1cc60921ef1f8108c2b08f91ec21004eeaf88ff07acb24cd54cc3958d5548d8b32cc8df4653031cad636dd4428ef4f7e38eda2bf8703a551486b3a061bb9effb3d08a02f633ba4a87bc9fa53a40ab6ef3ee280005c44a2f7707c87bf1fbf00e19fd88912532152f7faeda133c2b29523101ef1caf0a1929f853fd81f3804b012fe6dbdeb00b12ad7b37536f243b581988447ba8197cc8ab79d4ed676e88792c6b710abdc4abe96ac12646f983812fe83f324ad24ca93cf7f713a72e7155f37efc6882f1b9f3b4bb7552cfa0f938f873e4548296d6198e9e4be21e85ffed8bc693b61925ea03a706450a269d1abad05aea34516b791a4c9b23ba5e2eb3df70b69688b5f99493f3d58535b06ee92458a3c74383a7d2a81fff55305493c52a388f34cf32bb2be280431ad46e09fe8e4b07a32c3c04e747b44b2885b9f3e3033e1d649ba4ee06386f26b6855b623fc4d61a4d31ceca4ea3efa4c71231adeb8f51c26cfa23b18994ba5493d66ff512138d46dbb0b0b8d0d7fc25cf1979dee466d1cddffcee5d95adb563c5ba764c721f25901e0fae36a2c05da25d611149235d29a77b55677da89930769c80d02448b5a3fe6131947f3a5b3be372fea4abde1dbbf5fe90c6076085860d92b0d9b2282deb48994b6450aa7b5075fd6fd9fc92b30df295b57ddac357578a923cf1acfd632db741345331161524e79c1389dddc7c1ff93d16c3936cac18a32d647e2548c6695f865c50000830400073d08e817f4d040250ea13ce20a7c48a073169b614dc95f9acebd8c2ec7642a9f2158a8906d5e2c2be001bac943ab9cab4063536e1c546b40221fdf8db031a4bbeda04a6149103483f454f5d1229bb09582bc1ddf7f338e73f68309d8596b0a398ad3d5b3d98e0313f6de2cc702fe422ac424489e06fb6805e68f17df6a02558d008304000b1b9bc2d3e2262b92a9773e1d54d95a454ab072816eac5896a55ce30e73b4d8cc2158a8906d5e2c2be001bac943ab9cab4063536e1c546b40221fdf8db031a4bbb11a112babcb67f270d5019bf98f9bafc8eff73534ae5834c2033505438d34a7ee8c64763d7a42ed6bbb8888d66edfdfad38b0c9740cac75902c59233c99b6c500
This is fixed in the latest release
This was addressed by https://github.com/ElementsProject/elements/pull/1134 . #1105 should be reopened