I created a bitcoin transaction but I'm getting an error when trying to broadcast it:
mandatory-script-verify-flag-failed (Non-canonical signature: S value is unnecessarily high) (code 16)
HEX-WITH-HIGH-S
0100000001fe84d378379a44b5751e89f5145916abe2ec18c03735ad811fc656a34628dd22000000008c493046022100ac792f9d39b644835b9eabbeba9d48897385c721291267d07a850fbb07e5d9a1022100a552e1f28efb3dbd3ca6a360bc0e28f5cf0d73f4ba96202451be1129433a67b501410493249c6c4b75ce574e4f1ecc07117668f5ca7fd73ead514843ad4a9d4195c8f7b41662586dc61bcf920ef53031770afa183be244e88d6cc75d16de97f2da6d1dfeffffff02006d7c4d00000000160014bce56fa1231ff207fee8c421060faeb08f47813cf09c8a29000000001976a914687ff91a13091d31303c1bd7d27f23b610d52ac488ace2220d00
I googled it and seems the problem is that S value in ScriptSig is High. I probably found a working method to convert my High-S value
a552e1f28efb3dbd3ca6a360bc0e28f5cf0d73f4ba96202451be1129433a67b501
to Low-s value
aad1e0d7104c242c3595c9f43f1d708eba168f1f4b280176e144d638cfbd98c01
, but im not sure does it implement it well, because it still doesn't work.
HEX-WITH-LOW-S
0100000001fe84d378379a44b5751e89f5145916abe2ec18c03735ad811fc656a34628dd22000000008c493046022100ac792f9d39b644835b9eabbeba9d48897385c721291267d07a850fbb07e5d9a1022100a552e1f28efb3dbd3ca6a360bc0e28f5cf0d73f4ba96202451be1129433a67b501410493249c6c4b75ce574e4f1ecc07117668f5ca7fd73ead514843ad4a9d4195c8f7b41662586dc61bcf920ef53031770afa183be244e88d6cc75d16de97f2da6d1dfeffffff02006d7c4d00000000160014bce56fa1231ff207fee8c421060faeb08f47813cf09c8a29000000001976a914687ff91a13091d31303c1bd7d27f23b610d52ac488ace2220d00
Could someone help me with that? Any help would be appreciated.