IsStandardTx
ν¨μλ λΉνμ€ νΈλμμ
μ λν μ¬λ¬ μ΄μ λ₯Ό λ°νν μ μμ΅λλ€. κ·Έ μ€ μΌλΆλ νμ¬ λ¨μ ν
μ€νΈ test_IsStandard
( transaction_tests.cpp
)μ μν΄ νμ¬ ν
μ€νΈλκ³ μμΌλ©°, λ€λ₯Έ ννΈμΌλ‘λ κΈ°λ₯ ν
μ€νΈ mempool_accept.py
μ μν΄ ν¨μ νΈμΆμ κ²°κ³Όλ₯Ό μ§μ νμΈν©λλ€. testmempoolaccept
RPCλ₯Ό μ¬μ©νμ¬ κ°μ μ μΌλ‘ ν
μ€νΈνκ³ κ²°κ³Όμμ reject-reason
νλλ₯Ό νμΈν©λλ€. νμ¬ λ§μ€ν° λΈλμΉ(7967104aee055476107dc17265cefc4ae4e75378)μμ ν
μ€νΈ 컀λ²λ¦¬μ§λ λ€μκ³Ό κ°μ΅λλ€.
| IsStandardTx()
κ±°λΆ μ΄μ | κΈ°λ₯ ν
μ€νΈ( mempool_accept.py
) | λ¨μ ν
μ€νΈ( transaction_tests.cpp
) |
| ------------- |:-------------:|:-----:|
| "version"
| :heavy_check_mark: | |
| "tx-size"
| :heavy_check_mark: | |
| "scriptsig-size"
|
| "scriptsig-not-pushonly"
| :heavy_check_mark: | |
| "scriptpubkey"
| :heavy_check_mark: | :heavy_check_mark: |
| "bare-multisig"
|
| "dust"
| :heavy_check_mark: | :heavy_check_mark: |
| "multi-op-return"
| :heavy_check_mark: | :heavy_check_mark: |
"scriptsig-size"
λ° "bare-multisig"
μ λν΄ λ¨μ ν
μ€νΈ λλ κΈ°λ₯ ν
μ€νΈλ₯Ό ν΅ν΄ κ° μ΄μ μ λν΄ μ΅μν νλμ ν
μ€νΈλ₯Ό κ°λ κ²μ΄ ν©λ¦¬μ μ΄λΌκ³ μκ°ν©λλ€. μ§κΈμ²λΌ νμν©λλ€. μ΄λ₯Ό κ°μν λ λ€μκ³Ό κ°μ 7κ°μ μμ μμ
λͺ©λ‘μ΄ μμ±λ©λλ€(λλ΅ μ°μ μμμ λ°λΌ μ λ ¬λ¨).
"scriptsig-size"
μ΄μ μ λν λ¨μ ν
μ€νΈ μΆκ°(PR #17480, 5e8a56348b5e1026e9ddcae0b2fa2a68faf4439e 컀λ°, κ²Έμν μκ° μν)"bare-multisig"
μ λν λ¨μ ν
μ€νΈ μΆκ° μ΄μ (PR #17502, 1bb5d517aa616c1d5b5801d2ea36a2de5fb61eba 컀λ°, κ²Έμν μκ° μν)"scriptsig-size"
μ λν κΈ°λ₯ ν
μ€νΈ μΆκ° μ΄μ (PR #17532, μ»€λ° 8f2d7737cc236b6122f30e31856eb3181960fba1, κ²Έμν μκ° μν)"bare-multisig"
μ΄μ μ λν κΈ°λ₯ ν
μ€νΈ μΆκ°(PR #17541, 1be0b1fb2adcf95d76f879195564c0bf84162e31 컀λ°, κ²Έμν μκ° μν)"scriptsig-not-pushonly"
μ΄μ μ λν λ¨μ ν
μ€νΈ μΆκ°(PR #17720, μ»€λ° 5aab011805ceb12801644170700b1a62e0bf4a5d, κ²Έμν μκ° μν)"tx-size"
μ λν λ¨μ ν
μ€νΈ μΆκ° μ΄μ (PR #17947, μ»€λ° 4537ba5f21ad8afb705325cd8e15dd43877eb28f, κ²Έμν μκ° κΈ°λΆ)"version"
μ΄μ μ λν λ¨μ ν
μ€νΈ μΆκ°(PR #17555, https://github.com/bitcoin/bitcoin/pull/17555/commits/76303f65f92a0fbe9a90c0e807554a6daa860636 컀λ°), dμ μν΄ μλ£μ΄κ²μ μ’μ "μ°μν 첫 λ²μ§Έ νΈ" νλ³΄κ° λ κ² κ°μ΅λλ€ -- μ λ μ§μ μμ νκ³ μΆμ§λ§ μλ‘μ΄ κΈ°μ¬μλ₯Ό κ²©λ €νκΈ° μν΄(κ·Έλ¦¬κ³ "μ’μ 첫 λ²μ§Έ νΈ"κ° μ§μ νλ λ° μΌλ§λ λμμ΄ λ μ μλμ§ μκΈ°) μ λ νμ§ μμ κ²μ λλ€. μ μ λ§μ§μμμ€.
μ΄ μμ μ νκ³ μΆμ΅λλ€.
@Stack μ΄λ―Έ "bare-multisig"
ν
μ€νΈλ₯Ό μμνμ
¨λμ?
@dspicher : κ΄μ¬μ κ°μ Έμ£Όμ
μ κΈ°μ©λλ€! "bare-multisig"
μ λν λ¨μ λ° κΈ°λ₯ ν
μ€νΈ λͺ¨λμ λν PRμ μ§λ λ©°μΉ λμ λ΄κ° μ΄λ―Έ μ΄μμ΅λλ€(#17502 λ° #17541 μ°Έμ‘° -- λ λ€ μμ§ λ³ν©λμ§ μμ), λ°λΌμ μ§κΈ λ€μ μΈ κ°μ§ ν
μ€νΈλ μμ΄λ²λ¦°:
"scriptsig-not-pushonly"
μ΄μ μ λν λ¨μ ν
μ€νΈ"tx-size"
μ΄μ μ λν λ¨μ ν
μ€νΈ"version"
μ΄μ μ λν λ¨μ ν
μ€νΈκ·Έκ²λ€μ λν΄ μμ λ‘κ² μμ νκ³ μ¦κΈ°μμμ€! :)
λλ½λ λͺ¨λ λ¨μ ν μ€νΈ λ° κΈ°λ₯ ν μ€νΈλ μ΄μ λ§μ€ν° λΈλμΉμμ ꡬν λ° λ³ν©λ©λλ€. :tada: :beer: λ°λΌμ μ΄ λ¬Έμ λ₯Ό λ«μ΅λλ€.
κ°μ₯ μ μ©ν λκΈ
@dspicher : κ΄μ¬μ κ°μ Έμ£Όμ μ κΈ°μ©λλ€!
"bare-multisig"
μ λν λ¨μ λ° κΈ°λ₯ ν μ€νΈ λͺ¨λμ λν PRμ μ§λ λ©°μΉ λμ λ΄κ° μ΄λ―Έ μ΄μμ΅λλ€(#17502 λ° #17541 μ°Έμ‘° -- λ λ€ μμ§ λ³ν©λμ§ μμ), λ°λΌμ μ§κΈ λ€μ μΈ κ°μ§ ν μ€νΈλ μμ΄λ²λ¦°:"scriptsig-not-pushonly"
μ΄μ μ λν λ¨μ ν μ€νΈ"tx-size"
μ΄μ μ λν λ¨μ ν μ€νΈ"version"
μ΄μ μ λν λ¨μ ν μ€νΈκ·Έκ²λ€μ λν΄ μμ λ‘κ² μμ νκ³ μ¦κΈ°μμμ€! :)