πŸ‡°πŸ‡· μΉ΄λ₯΄λ‹€λ…Έ 탐ꡬ: μΉ΄λ₯΄λ‹€λ…Έμ˜ 개발 단계와 μ‹œλŒ€

μΉ΄λ₯΄λ‹€λ…Έμ˜ 개발 단계와 μ‹œλŒ€

이 κ°œμš”λŠ” CIP 59λ₯Ό 기반으둜 ν•©λ‹ˆλ‹€.

μΉ΄λ₯΄λ‹€λ…Έμ˜ κ°œλ°œμ€ 잘 μ •μ˜λ˜κ³  λͺ…ν™•ν•˜κ²Œ μ „λ‹¬λœ λ‘œλ“œλ§΅μ„ λ”°λ¦…λ‹ˆλ‹€. ν•™μˆ  연ꡬ와 μ—„κ²©ν•œ ν…ŒμŠ€νŠΈλ₯Ό 기반으둜 ν•œ 이 ν”„λ‘œμ„ΈμŠ€λŠ” 쀑단 μ—†λŠ” 체인을 λ§Œλ“€μ–΄λƒˆμŠ΅λ‹ˆλ‹€.

μΉ΄λ₯΄λ‹€λ…ΈλŠ” ν•˜λ“œν¬ν¬ κ²°ν•©κΈ°(Hard Fork Combinator) 이벀트λ₯Ό 톡해 μ—¬λŸ¬ 개발 단계와 μ‹œλŒ€λ₯Ό κ±°μ³€μŠ΅λ‹ˆλ‹€. λ‹€μŒ κ°œλ…μ€ μ•„λž˜μ— μ„€λͺ…λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€:

  • 개발 단계 - μΉ΄λ₯΄λ‹€λ…Έ λ‘œλ“œλ§΅μ— μ„€λͺ…λœ 높은 μˆ˜μ€€μ˜ κΈ°λŠ₯ λͺ¨μŒμž…λ‹ˆλ‹€.
  • 원μž₯ μ‹œλŒ€ - ν•˜λ“œν¬ν¬μ™€ ν•¨κ»˜ λ„μž…λœ 원μž₯ κΈ°λŠ₯ λͺ¨μŒ. μ•Œλ‘ μ‘°λ₯Ό μ‹œμž‘μœΌλ‘œ μˆ˜ν•™μžμ™€ 컴퓨터 κ³Όν•™μžμ˜ 이름을 λ”°μ„œ a, b, c μˆœμ„œλ‘œ μ‹œλŒ€λ₯Ό λͺ…λͺ…ν•  κ³„νšμž…λ‹ˆλ‹€.
  • μ‹œλŒ€ λ‚΄ ν•˜λ“œν¬ν¬ - ν•˜λ“œν¬ν¬κ°€ ν•„μš”ν•œ 원μž₯의 μž‘κ³  집쀑적인 μ‹œλ§¨ν‹± λ³€κ²½.
  • ν•©μ˜ λ©”μ»€λ‹ˆμ¦˜ - ν•˜λ“œν¬ν¬μ™€ ν•¨κ»˜ λ„μž…λœ ν•©μ˜ κΈ°λŠ₯의 λͺ¨μŒμž…λ‹ˆλ‹€. μ—­μ‚¬μ μœΌλ‘œ 'μš°λ‘œλ³΄λ‘œμŠ€β€™λΌλŠ” 이름이 λΆ™μ—ˆμŠ΅λ‹ˆλ‹€.
  • 원μž₯ ν”„λ‘œν† μ½œ - ν•©μ˜ λ ˆμ΄μ–΄μ™€ 원μž₯ λ ˆμ΄μ–΄ μ‚¬μ΄μ˜ 원μž₯ κΈ°λŠ₯ λͺ¨μŒμœΌλ‘œ, λŒ€λž΅ 블둝 헀더 검증이 νŠΉμ§•μž…λ‹ˆλ‹€.

개발 단계

μΉ΄λ₯΄λ‹€λ…Έμ˜ 개발 λ‹¨κ³„μ—λŠ” λ°”μ΄λŸ°, 셸리, 고겐, λ°”μ‡Ό, λ³Όν…Œλ₯΄κ°€ 있으며, 컴퓨터 κ³Όν•™μžμΈ 고겐을 μ œμ™Έν•˜κ³ λŠ” λͺ¨λ‘ μ‹œμΈμ˜ 이름을 λ”°μ„œ λͺ…λͺ…λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

λ°”μ΄λŸ°μ€ μž¬λ‹¨ 섀립에, μ…Έλ¦¬λŠ” νƒˆμ€‘μ•™ν™”μ— 쀑점을 λ‘μ—ˆμŠ΅λ‹ˆλ‹€. 고겐은 슀마트 μ»¨νŠΈλž™νŠΈμ™€ λ„€μ΄ν‹°λΈŒ 에셋 지원, λ°”μ‡ΌλŠ” ν™•μž₯μ„± ν–₯상, λ§ˆμ§€λ§‰μœΌλ‘œ λ³Όν…Œλ₯΄λŠ” νƒˆμ€‘μ•™ν™”λœ κ±°λ²„λ„ŒμŠ€μ™€ μ˜μ‚¬κ²°μ •μ— λŒ€ν•΄ λ‹€λ£¨μ—ˆμŠ΅λ‹ˆλ‹€.

μΉ΄λ₯΄λ‹€λ…Έμ˜ 개발 단계 κ°œμš”λŠ” μ—¬κΈ°λ₯Ό μ°Έμ‘°ν•˜μ„Έμš”.

원μž₯ μ‹œλŒ€

μΉ΄λ₯΄λ‹€λ…Έμ˜ μ§„ν™”μ—λŠ” μ—¬λŸ¬ μ‹œλŒ€κ°€ μžˆμŠ΅λ‹ˆλ‹€. 각 μ‹œλŒ€λŠ” 원μž₯의 κ·œμΉ™μ„ λ‚˜νƒ€λƒ…λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, μ–΄λ–€ νŠΈλžœμž­μ…˜ μœ ν˜•κ³Ό μ–΄λ–€ 데이터가 원μž₯에 μ €μž₯λ˜λŠ”μ§€, λ˜λŠ” νŠΈλžœμž­μ…˜μ˜ μœ νš¨μ„±κ³Ό 의미 등이 μžˆμŠ΅λ‹ˆλ‹€.

λ°”μ΄λŸ°κ³Ό 셸리 μ‹œλŒ€

μΉ΄λ₯΄λ‹€λ…Έ λ©”μΈλ„·μ˜ μ§„ν™”λŠ” λ°”μ΄λŸ° 원μž₯ κ·œμΉ™μ—μ„œ μ‹œμž‘λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 2020λ…„ 7μ›” 말, 메인넷은 λ°”μ΄λŸ° κ·œμΉ™μ—μ„œ 셸리 원μž₯ κ·œμΉ™μœΌλ‘œ μ „ν™˜ν•˜κΈ° μœ„ν•΄ ν•˜λ“œ 포크λ₯Ό κ±°μ³€μŠ΅λ‹ˆλ‹€. μ΄λŠ” μΉ΄λ₯΄λ‹€λ…Έμ˜ μ™„μ „ν•œ μž¬κ΅¬ν˜„μ΄μ—ˆμœΌλ©°, 이λ₯Ό 톡해 두 가지 근본적인 λ³€ν™”, 즉 μ—¬λŸ¬ 원μž₯ κ·œμΉ™ μ„ΈνŠΈ 지원과 ν•œ κ·œμΉ™ μ„ΈνŠΈμ—μ„œ λ‹€μŒ κ·œμΉ™ μ„ΈνŠΈλ‘œ μ „ν™˜ν•˜λŠ” ν•˜λ“œν¬ν¬ ν”„λ‘œμ„ΈμŠ€μ˜ 관리가 κ°€λŠ₯ν•΄μ‘ŒμŠ΅λ‹ˆλ‹€. 즉, μƒˆλ‘œμš΄ κ΅¬ν˜„μ€ λ°”μ΄λŸ° κ·œμΉ™κ³Ό 셸리 κ·œμΉ™μ„ λͺ¨λ‘ 지원할 수 μžˆμ—ˆμœΌλ©°, μ΄λŠ” 2020λ…„ μ΄ˆμ— 메인넷에 λ°°ν¬λ˜μ—ˆμ„ λ•Œ λ°”μ΄λŸ° κ·œμΉ™κ³Ό μ™„λ²½ν•˜κ²Œ ν˜Έν™˜λœλ‹€λŠ” 것을 μ˜λ―Έν–ˆμŠ΅λ‹ˆλ‹€. 이λ₯Ό 톡해 이전 κ΅¬ν˜„μ—μ„œ μƒˆλ‘œμš΄ κ΅¬ν˜„μœΌλ‘œ μ›ν™œν•˜κ²Œ μ „ν™˜ν•  수 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. λͺ¨λ“  μΉ΄λ₯΄λ‹€λ…Έ μ‚¬μš©μžκ°€ λ…Έλ“œλ₯Ό μƒˆλ‘œμš΄ κ΅¬ν˜„μœΌλ‘œ μ—…κ·Έλ ˆμ΄λ“œν•œ ν›„, ν•˜λ“œν¬ν¬ κ²°ν•©κΈ° 이벀트λ₯Ό ν˜ΈμΆœν•˜κ³  셸리 κ·œμΉ™μœΌλ‘œ μ „ν™˜ν•  수 있게 λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

μ•Œλ ˆκ·ΈλΌ, 메리, μ•Œλ‘ μ‘° μ‹œλŒ€

μ•Œλ ˆκ·ΈλΌ(Allegra), 메리(Mary), μ•Œλ‘ μ‘°(Alonzo) μ‹œλŒ€λŠ” λͺ¨λ‘ 고겐 개발 λ‹¨κ³„μ˜ μΌλΆ€μž…λ‹ˆλ‹€.

고겐을 μ‹œμž‘μœΌλ‘œ, 원μž₯ νŒ€μ€ 원μž₯ μ½”λ“œμ— μ‹œλŒ€λΌλŠ” κ°œλ…μ„ λ„μž…ν–ˆμŠ΅λ‹ˆλ‹€. 이후 셸리 원μž₯ κ·œμΉ™μ€ '셸리 μ‹œλŒ€β€™κ°€ λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

고겐 κΈ°λŠ₯은 λ‹¨κ³„μ μœΌλ‘œ κ΅¬ν˜„λ˜μ—ˆκΈ° λ•Œλ¬Έμ— 각 κΈ°λŠ₯ μ„ΈνŠΈλŠ” λ‹€λ₯Έ ν•˜λ“œν¬ν¬μ™€ ν•¨κ»˜ λ„μž…λ˜μ—ˆκΈ°μ— μ—¬λŸ¬ 개의 원μž₯ μ‹œλŒ€κ°€ μ‘΄μž¬ν–ˆμŠ΅λ‹ˆλ‹€:

  • μ•Œλ ˆκ·ΈλΌ: 토큰 잠금 지원 λ„μž…
  • 메리: μΉ΄λ₯΄λ‹€λ…Έμ— λ„€μ΄ν‹°λΈŒ 토큰과 닀쀑 μžμ‚° κΈ°λŠ₯ λ„μž…
  • μ•Œλ‘ μ‘°: 슀마트 μ»¨νŠΈλž™νŠΈ 지원 λ„μž…

μ•Œλ ˆκ·ΈλΌμ™€ λ©”λ¦¬λΌλŠ” 이름은 μ‹œμΈ νΌμ‹œ μ…Έλ¦¬μ™€μ˜ μ—°κ΄€μ„± λ•Œλ¬Έμ— μ„ νƒλ˜μ—ˆμœΌλ©°, 원μž₯ μ½”λ“œμ—μ„œ μ‚¬μš©λ˜λŠ” 맀우 νŠΉμ •ν•œ 좔상화λ₯Ό μœ„ν•œ λ³€μˆ˜ μ΄λ¦„μœΌλ‘œλ§Œ μ‚¬μš©ν•˜λ„λ‘ μ˜λ„λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

슀마트 μ»¨νŠΈλž™νŠΈ 개발 단계인 고겐은 μ‹œμΈμ˜ 이름을 λ”°μ„œ λͺ…λͺ…λ˜μ§€ μ•Šμ€ μœ μΌν•œ λ‹¨κ³„μ˜€μŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ 슀마트 μ»¨νŠΈλž™νŠΈλ₯Ό λ„μž…ν•œ 원μž₯ μ‹œλŒ€μ˜ 이름은 λžŒλ‹€ 미적뢄을 발λͺ…ν•œ μ•Œλ‘ μ‘° 처치의 이름을 λ”°μ„œ λͺ…λͺ…ν–ˆμŠ΅λ‹ˆλ‹€(ν”Œλ£¨νˆ¬μŠ€ μ½”μ–΄λŠ” μ‹œμŠ€ν…œ F의 λ³€ν˜•μ„ μ‚¬μš©ν•¨).

μ•žμœΌλ‘œ νŒ€λ“€μ€ μˆ˜ν•™κ³Ό 컴퓨터 과학에 κΈ°μ—¬ν•œ 개인의 이름을 λ”°μ„œ a,b,c μˆœμ„œλ‘œ 이름을 μ‚¬μš©ν•˜κΈ°λ‘œ κ²°μ •ν–ˆμŠ΅λ‹ˆλ‹€. ν•œ 가지 λˆˆμ— λ„λŠ” 일관성이 λΆ€μ‘±ν•œ 점은 μ‹œλŒ€λ³„λ‘œ 이름과 성을 λͺ¨λ‘ μ‚¬μš©ν•  수 μžˆλ‹€λŠ” μ μž…λ‹ˆλ‹€. μ΄λŠ” 간결성을 κ³ λ €ν•œ κ²ƒμž…λ‹ˆλ‹€.

배비지 μ‹œλŒ€

배비지(Babbage) 원μž₯ μ‹œλŒ€μ—λŠ” 인라인 데이텀, μ°Έμ‘° 슀크립트, μ°Έμ‘° μž…λ ₯κ³Ό 같은 κΈ°λŠ₯이 λ„μž…λ˜μ—ˆμŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ 이 λ¦΄λ¦¬μŠ€λŠ” 고인이 된 λΆˆκ°€λ¦¬μ•„ μˆ˜ν•™μžμ΄μž μΉ΄λ₯΄λ‹€λ…Έ μ•°λ°°μ„œλ”μ˜€λ˜ λ°”μ§ˆ 닀보프(Vasil Dabov)λ₯Ό 기리기 μœ„ν•΄ λ°”μ§ˆλ‘œ λͺ…λͺ…λ˜κΈ°λ„ ν–ˆμŠ΅λ‹ˆλ‹€.

μ‹œλŒ€ λ‚΄ ν•˜λ“œν¬ν¬

μƒˆλ‘œμš΄ μ‹œλŒ€λŠ” ν•˜λ“œν¬ν¬λ₯Ό 톡해 λ„μž…λ˜μ–΄μ•Ό ν•˜μ§€λ§Œ, 원μž₯은 λ‹€λ₯Έ λ©”μ»€λ‹ˆμ¦˜μΈ μ‹œλŒ€ λ‚΄ ν•˜λ“œν¬ν¬λ₯Ό 톡해 ν†΅μ œλœ ν•˜λ“œν¬ν¬ λ™μ•ˆμ—λ„ 의미 체계λ₯Ό λ³€κ²½ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μ΄λŠ” μ£Όμš” ν”„λ‘œν† μ½œ 버전을 λ³€κ²½ν•˜μ§€λ§Œ μƒˆλ‘œμš΄ 원μž₯ μ‹œλŒ€λ₯Ό λ§Œλ“œλŠ” 것이 μ•„λ‹Œ κ΅¬ν˜„ μ„ΈλΆ€ μ‚¬ν•­μž…λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, μ•Œλ‘ μ‘° μ‹œλŒ€λŠ” μ£Όμš” ν”„λ‘œν† μ½œ 버전 5μ—μ„œ 6으둜 λ„˜μ–΄κ°ˆ λ•Œ μ‹œλŒ€ λ‚΄ ν•˜λ“œν¬ν¬κ°€ μžˆμ—ˆμŠ΅λ‹ˆλ‹€.

μ•„λž˜μ—μ„œ μΉ΄λ₯΄λ‹€λ…Έμ˜ 단계, μ‹œλŒ€, μ‹œλŒ€ λ‚΄ ν•˜λ“œν¬ν¬λ₯Ό μ‹œκ°ν™”ν•œ ν‘œλ₯Ό 확인할 수 μžˆμŠ΅λ‹ˆλ‹€:

이미지 좜처: CIP-59 μΉ΄λ₯΄λ‹€λ…Έ κΈ°λŠ₯ 별첨

κ²°λ‘ 

μΉ΄λ₯΄λ‹€λ…Έ λ„€νŠΈμ›Œν¬μ˜ λͺ¨λ“  의미둠적 λ³€ν™”κ°€ 원μž₯κ³Ό κ΄€λ ¨λœ 것은 μ•„λ‹ˆλΌλŠ” 점을 이해해야 ν•©λ‹ˆλ‹€. ν•©μ˜ ν”„λ‘œν† μ½œμ΄λ‚˜ λ„€νŠΈμ›Œν‚Ή λ ˆμ΄μ–΄λ₯Ό λ³€κ²½ν•˜λ €λ©΄ ν•˜λ“œ 포크가 ν•„μš”ν•  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€. ν•©μ˜ λ ˆμ΄μ–΄μ™€ 원μž₯ λ ˆμ΄μ–΄ μ‚¬μ΄μ—λŠ” ν”„λ‘œν† μ½œμ΄λΌλŠ” 좔상화도 μ‘΄μž¬ν•©λ‹ˆλ‹€. 원μž₯ ν”„λ‘œν† μ½œκ³Ό 원μž₯ μ‹œλŒ€μ˜ ꡬ뢄은 λŒ€λž΅ 블둝 ν—€λ”μ˜ μœ νš¨μ„± 검사 방법(ν”„λ‘œν† μ½œ)κ³Ό 블둝 본체의 μœ νš¨μ„± 검사 방법(μ‹œλŒ€)에 ν•΄λ‹Ήν•©λ‹ˆλ‹€. 셸리 μ‹œλŒ€μ—λŠ” 우둜보둜슀 BFTμ—μ„œ λ²—μ–΄λ‚˜κΈ° μœ„ν•΄ ν”„λΌμ˜€μŠ€μ™€ μ „ν™˜ μ‹œμŠ€ν…œμ„ κ²°ν•©ν•œ β€˜κ³Όλ„κΈ°μ  ν”„λΌμ˜€μŠ€β€™ ν”„λ‘œν† μ½œ(TPraos)이 μ‚¬μš©λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 배비지 μ‹œλŒ€λŠ” TPraosλ₯Ό ν”„λΌμ˜€μŠ€λ‘œ λŒ€μ²΄ν–ˆμŠ΅λ‹ˆλ‹€.

ν”„λ‘œν† μ½œ 버전은 λ…Έλ“œ κ°„ 및 λ…Έλ“œ ν΄λΌμ΄μ–ΈνŠΈ κ°„ ν”„λ‘œν† μ½œ 버전과 λ¬΄κ΄€ν•˜λ‹€λŠ” 점에 μœ μ˜ν•˜μ‹œκΈ° λ°”λžλ‹ˆλ‹€. ν•©μ˜ λ ˆμ΄μ–΄λŠ” λ…Έλ“œ 쿼리에 λŒ€ν•œ 버전 관리 체계λ₯Ό μœ μ§€ν•˜λ©°, 이 κ°œμš”μ—μ„œ μ„€λͺ…ν•œ ν”„λ‘œν† μ½œ 버전과 λ°˜λ“œμ‹œ μΌμΉ˜ν•˜μ§€λŠ” μ•ŠμŠ΅λ‹ˆλ‹€.

ν”„λ‘œν† μ½œ 버전은 블둝 μƒμ„±μžκ°€ 지원할 수 μžˆλŠ” μ΅œλŒ€ ν”„λ‘œν† μ½œ 버전을 λ‚˜νƒ€λ‚΄λŠ” 각 블둝 헀더에도 ν¬ν•¨λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€(셸리 원μž₯ 사양 μ„Ήμ…˜ 13, μ†Œν”„νŠΈμ›¨μ–΄ μ—…λ°μ΄νŠΈ μ°Έμ‘°).


* Source: https://docs.cardano.org/explore-cardano/eras-and-phases/
* Translation: Ilhun@CryptoVeri :twitter: enics_sky@naver.com