πŸ‘©πŸ»β€πŸ’» Taproot

whenΒ·2022λ…„ 6μ›” 27일
0

Taproot

λΉ„νŠΈμ½”μΈμ˜ 슀크립트λ₯Ό κ°œμ„ ν•˜μ—¬ ν”„λΌμ΄λ²„μ‹œλ₯Ό ν–₯μƒμ‹œν‚€κ³  λ³΅μž‘ν•œ νŠΈλžœμž­μ…˜κ³Ό κ΄€λ ¨λœ μš”μ†Œλ₯Ό κ°œμ„ ν•˜κΈ° μœ„ν•œ μ†Œν”„νŠΈν¬ν¬(2021.11μ—…κ·Έλ ˆμ΄λ“œ)

ν”„λΌμ΄λ²„μ‹œ, ν™•μž₯μ„±, λ³΄μ•ˆμ„ κ°•ν™”ν•˜κΈ° μœ„ν•΄ λΉ„νŠΈμ½”μΈ 슀크립트 μž‘λ™ 방식에 λ³€ν™”λ₯Ό μ£ΌλŠ” 것
λΉ„νŠΈμ½”μΈμ€ μŠˆλ…Έλ₯΄ μ„œλͺ…을 λ„μž…ν•΄ λ©€ν‹°μ‹œκ·Έ μ„œλͺ…에 μ‚¬μš©λ˜λŠ” λ°μ΄ν„°μ˜ 양을 획기적으둜 쀄이고
MAST(Merklized Abstract Syntax Tree)λ₯Ό 톡해 슀크립트의 νš¨μœ¨μ„±κ³Ό ν”„λΌμ΄λ²„μ‹œλ₯Ό κ°œμ„ ν–ˆλ‹€.

Schnorr Signatures(μŠˆλ…Έλ₯΄ μ„œλͺ…)

λ³΅μž‘ν•œ λΉ„νŠΈμ½”μΈ νŠΈλžœμž­μ…˜ 내에 λ‹€μˆ˜μ˜ ν‚€λ₯Ό 포함할 수 μžˆλ‹€.
μ—¬λŸ¬ 개의 μ„œλͺ…을 λͺ¨μ•„μ„œ λ‹¨μΌν•˜κ³  κ³ μœ ν•œ μ„œλͺ…을 생성할 수 μžˆλ‹€. : μ„œλͺ…톡합(signature aggregation)

기쑴의 타원곑선 λ””μ§€ν„Έμ„œλͺ… μ•Œκ³ λ¦¬μ¦˜(ECDSA)은 각 νŠΈλžœμž­μ…˜λ§ˆλ‹€ λ””μ§€ν„Έμ„œλͺ…을 ν•˜μ—¬ νŠΈλžœμž­μ…˜ μ‚¬μ΄μ¦ˆκ°€ 컀지고 블둝에 νŠΈλžœμž­μ…˜μ„ 넣을 수 μžˆλŠ” 양이 λ§Žμ§€ μ•Šμ•˜λŠ”λ°, μŠˆλ…Έλ₯΄ μ„œλͺ… κΈ°μˆ μ„ μ΄μš©ν•˜λ©΄ λ‹€μˆ˜μ˜ μ„œλͺ…을 ν•˜λ‚˜μ˜ μ„œλͺ…μœΌλ‘œ ν†΅ν•©ν•˜μ—¬ 전솑할 수 μžˆλ‹€. λΈ”λ‘μ²΄μΈμ—μ„œ μ„œλͺ…이 μ°¨μ§€ν•˜λŠ” 크기λ₯Ό μ€„μ˜€κΈ° λ•Œλ¬Έμ— κ±°λž˜μ²˜λ¦¬μ†λ„μ™€ ν™•μž₯성이 ν–₯μƒλœλ‹€.

λ‹€μˆ˜μ˜ 주체가 μ§„ν–‰ν•œ μ„œλͺ…이더라도 ν•˜λ‚˜μ˜ 곡동킀λ₯Ό κ°–κ³  μ„œλͺ…ν•˜κΈ° λ•Œλ¬Έμ— μ—¬λŸ¬ λͺ…이 μ„œλͺ…ν•œ 것인지 ν•œ λͺ…이 μ„œλͺ…ν•œ 것인지 κ΅¬λΆ„ν•˜κΈ° μ–΄λ ΅λ‹€. λ‹€μ€‘μ„œλͺ…(Multi-Sig)μ΄μ§€λ§Œ 외뢀에선 λ‹¨μΌμ„œλͺ…μœΌλ‘œ 보일 수 μžˆμ–΄ ν”„λΌμ΄λ²„μ‹œλ„ κ°•ν™”λœλ‹€.

MAST와 μŠ€λ§ˆνŠΈκ³„μ•½

λΉ„νŠΈμ½”μΈμ€ λ‹¨μˆœνžˆ μ†‘κΈˆ μž‘μ—…λΏ μ•„λ‹ˆλΌ λΉ„νŠΈμ½”μΈμ˜ 언어인 슀크립트λ₯Ό ν™œμš©ν•΄ μ—¬λŸ¬ κΈ°λŠ₯을 κ΅¬ν˜„ν•  수 μžˆλ‹€. κ·ΈλŸ¬λ‚˜ μ‚¬μš©μžκ°€ μŠ€ν¬λ¦½νŠΈμ— κΈ°λŠ₯을 많이 κ΅¬ν˜„ν• μˆ˜λ‘ κΈ°λŠ₯싀행에 ν•„μš”ν•˜μ§€ μ•Šμ€ 쑰건문도 λͺ¨λ‘ κ²€μ¦λ˜κΈ° λ•Œλ¬Έμ— μ‹€ν–‰ μ‹œκ°„μ΄ μ˜€λž˜κ±Έλ¦¬λŠ” 단점이 μžˆλ‹€. νƒ­λ£¨νŠΈλŠ” μ΄λŸ¬ν•œ 단점을 λ³΄μ™„ν•˜κΈ° μœ„ν•΄ λͺ¨λ“  쑰건문을 μ‹€ν–‰ν•˜μ§€ μ•Šκ³  ν•„μš”ν•œ λΆ€λΆ„λ§Œ λ¨Όμ € 검증할 수 있게 λ°”κΎΈμ—ˆλ‹€. μ‚¬μš©μžκ°€ λ§Œλ“  λΉ„νŠΈμ½”μΈ μŠ€ν¬λ¦½νŠΈλŠ” '머클 좔상화 ꡬ문트리(MAST)'에 λ”°λ‘œ λ‹΄κΈ°κ²Œ λ˜λ©΄μ„œ μ‚¬μš©μžκ°€ μžμ‹ μ˜ λΉ„νŠΈμ½”μΈμ— νƒ‘μž¬ν•  수 μžˆλŠ” 슀크립트의 κ°œμˆ˜λ„ λ¬΄ν•œμ • λŠ˜μ–΄λ‚  수 μžˆλ‹€.

슀크립트λ₯Ό 톡해 λΉ„νŠΈμ½”μΈμ„ μ „μ†‘ν•˜λ©΄ λΉ„νŠΈμ½”μΈμ΄ 전솑될 λ•Œλ§ˆλ‹€ μ‚¬μš©μžμ˜ μŠ€ν¬λ¦½νŠΈκ°€ μ™ΈλΆ€λ‘œ κ³΅κ°œλ˜λŠ” νŠΉμ§•μ΄ μžˆλŠ”λ°, νƒ­λ£¨νŠΈ μ—…κ·Έλ ˆμ΄λ“œλ₯Ό 톡해 λͺ¨λ“  슀크립트 κ³΅κ°œκ°€ μ•„λ‹Œ μ‚¬μš©μžκ°€ μž‘μ„±ν•œ 슀크립트 쀑 ν•˜λ‚˜λ§Œ μ„ νƒμ μœΌλ‘œ 외뢀에 κ³΅κ°œν•  수 μžˆλ„λ‘ λ³€κ²½λ˜μ—ˆλ‹€.(ν”„λΌμ΄λ²„μ‹œ κ°•ν™”) μ΄λŸ¬ν•œ νŠΉμ„±μœΌλ‘œ 인해 λΉ„νŠΈμ½”μΈλ„ '슀마트 μ»¨νŠΈλž™νŠΈ(smart contract)' κΈ°λŠ₯의 지원이 κ°€λŠ₯ν•΄μ‘Œλ‹€.

슀마트 μ»¨νŠΈλž™νŠΈλŠ” 블둝체인 μƒμ—μ„œ νŠΉμ • 쑰건이 좩쑱되면 μ€‘κ°œμΈ 없이도 λ””μ§€ν„Έμžμ‚° κ±°λž˜κ°€ μžλ™μœΌλ‘œ 이뀄지도둝 ν•˜λŠ” κΈ°λŠ₯이닀. 슀마트 μ»¨νŠΈλž™νŠΈλŠ” 이더리움 λ„€νŠΈμ›Œν¬λ₯Ό 블둝체인 2.0이라고 μΉ­ν•˜κ²Œ ν•˜λŠ” μ€‘μš”ν•œμ˜ ν•΅μ‹¬μ΄μž 차별화 ν¬μΈνŠΈμ˜€λŠ”λ° λΉ„νŠΈμ½”μΈλ„ 적용이 κ°€λŠ₯ν•˜κ²Œ 된 것이닀. νƒ­λ£¨νŠΈλ₯Ό μ΄μš©ν•˜λ©΄ μ‚¬μš©μžλŠ” 슀마트 μ»¨νŠΈλž™νŠΈ 상에 ν‘œμ‹œλœ μ—¬λŸ¬ μ‹€ν–‰ 쑰건듀 쀑 ν•„μš”ν•œ 쑰건만 μ„ νƒμ μœΌλ‘œ κ³΅κ°œν•˜λŠ” 것이 κ°€λŠ₯ν•˜κ³ , 슀마트 μ»¨νŠΈλž™νŠΈ μ‹€ν–‰ μ‹œ λͺ¨λ“  쑰건을 확인할 ν•„μš”κ°€ μ—†μ–΄ μ‹€ν–‰ 속도도 λΉ¨λΌμ§€λŠ” νš¨κ³Όκ°€ μžˆλ‹€.

μŠˆλ…Έλ₯΄λΌλŠ” μƒˆλ‘œμš΄ μœ ν˜•μ˜ μ„œλͺ… 방식과 MAST의 λ„μž…μœΌλ‘œ λΉ„νŠΈμ½”μΈ 기반의 슀마트 계약이 ν™•μž₯되면,β€˜νƒˆ(θ„«)μ€‘μ•™κΈˆμœ΅μ‹œμŠ€ν…œ(λ””νŒŒμ΄)’ μƒνƒœκ³„ λ‚΄ λΉ„νŠΈμ½”μΈμ˜ 비쀑도 μžμ—°μŠ€λŸ½κ²Œ 증가할 κ²ƒμœΌλ‘œ μ˜ˆμƒλœλ‹€.

νƒ­λ£¨νŠΈ 적용 in λΉ„νŠΈμ½”μΈ

  • ν”„λΌμ΄λ²„μ‹œ
    λˆ„κ΅¬λ‚˜ λ‹€μ€‘μ„œλͺ…을 ν¬ν•¨ν•œ λͺ¨λ“  λΉ„νŠΈμ½”μΈμ˜ νŠΈλžœμž­μ…˜ 이동과정을 λ³Ό 수 μžˆμ§€λ§Œ νƒ­λ£¨νŠΈλ‘œ 인해 단일 νŠΈλžœμž­μ…˜μ²˜λŸΌ 보이게 되며 λ³΄λ‚΄λŠ” μ£Όμ†Œμ™€ λ°›λŠ” μ£Όμ†Œλ§Œ 확인할 수 μžˆλ‹€.
  • ν™•μž₯μ„±
    λΈ”λ‘μ²΄μΈμƒμ—μ„œ 전솑 및 μ €μž₯ν•΄μ•Ό ν•˜λŠ” 데이터 μ–‘μ˜ κ°μ†Œ
    블둝 λ‹Ή 더 λ§Žμ€ νŠΈλžœμž­μ…˜ 처리(TPS↑)
    보닀 μ €λ ΄ν•œ νŠΈλžœμž­μ…˜ 수수료
  • λ³΄μ•ˆ
    μŠˆλ‘œλ“œ μ„œλͺ…을 톡해 μ„œλͺ…을 ν•œκΊΌλ²ˆμ— μ²˜λ¦¬ν•˜κΈ° λ•Œλ¬Έμ— μ„œλͺ…을 λ³€κ²½ν•  수 μ—†λ‹€. πŸ‘‰πŸΌ μ΄μ€‘μ§€λΆˆλ¬Έμ œ ν•΄κ²°
    * μ„œλͺ… κ°€λ³€μ„±(signature Malleability) πŸ‘‰πŸΌ μ΄μ€‘μ§€λΆˆλ¬Έμ œ, λΆ„μ‚° 원μž₯의 무결성 훼손
    : νŠΈλžœμž­μ…˜μ΄ 승인되기 전에 μ„œλͺ…을 λ³€κ²½ν•  수 μžˆμŒμ„ μ΄μš©ν•΄ νŠΈλžœμž­μ…˜μ΄ λ°œμƒν•œ 적이 μ—†μ—ˆλ˜ κ²ƒμ²˜λŸΌ 보이게 ν•  수 μžˆλ‹€.
profile
상상은 ν˜„μ‹€μ΄ λœλ‹€.

0개의 λŒ“κΈ€