Los pactos para programadores: el commit perfecto de 𐀉𐀄𐀅𐀔𐀅𐀏 y el token de delegaciΓ³n

𐀁𐀓𐀉𐀕 β€” ν”„λ‘œκ·Έλž˜λ¨Έ


μš°λ¦¬λŠ” 창쑰의 μ½”λ“œλ² μ΄μŠ€λ₯Ό μ‚΄νŽ΄λ³΄μ•˜μŠ΅λ‹ˆλ‹€. μ˜€λŠ˜μ€ λͺ¨λ“  것을 λ°”κΎΈλŠ” μ»€λ°‹μž…λ‹ˆλ‹€.

μ›μ΄ˆμ  버그

π€π€“π€€π€”π€‰π€•οΌˆλ² λ ˆμ‹œνŠΈ / μ°½μ„ΈκΈ°οΌ‰1:26-28 β€” π€€π€ƒπ€ŒοΌˆadM)은 μ„Έ κ°€μ§€ κΈ°λ³Έ κΆŒν•œμ„ λΆ€μ—¬λ°›μ•„ λ°°ν¬λ˜μ—ˆμŠ΅λ‹ˆλ‹€:

tzelem   β†’ κΈ°μ›μ˜ μ €μž₯μ†Œμ— λŒ€ν•œ μ•‘μ„ΈμŠ€ 자격증λͺ…
demut    β†’ κΈ°λ³Έ ν”„λ‘œν† μ½œμ— λŒ€ν•œ 읽기/μ“°κΈ° μ•‘μ„ΈμŠ€
radah    β†’ 운영 도메인에 λŒ€ν•œ μ‹€ν–‰ κΆŒν•œ

μŠ€νƒμ΄ 정상 μž‘λ™ μ€‘μž…λ‹ˆλ‹€. μ™„μ „ν•œ μ ‘κ·Ό. ν”„λ‘œλ•μ…˜ ν™˜κ²½μ—μ„œ 승인된 μ—μ΄μ „νŠΈ.

𐀁𐀓𐀀𐀔𐀉𐀕 3 β€” π€€π€ƒπ€Œμ€ κ²€μ¦λ˜μ§€ μ•Šμ€ 좜처의 μž…λ ₯을 μˆ˜λ½ν•˜μ—¬ π€ˆπ€…π€οΌˆtov β€” κΈ°λŠ₯적)과 π€“π€οΌˆra β€” μ—­κΈ°λŠ₯μ οΌ‰μ˜ λ§€κ°œλ³€μˆ˜λ₯Ό μž¬μ •μ˜ν•©λ‹ˆλ‹€. μ•„ν‚€ν…μ²˜ μš©μ–΄λ‘œλŠ”: 비인가 μΆœμ²˜λ‘œλΆ€ν„°μ˜ μ˜μ‘΄μ„± μ£Όμž….

κ²°κ³ΌλŠ” 즉각적이고 λ…Όλ¦¬μ μž…λ‹ˆλ‹€: 자격증λͺ…이 μ·¨μ†Œλ©λ‹ˆλ‹€. 원본 μ €μž₯μ†Œμ— λŒ€ν•œ 접근이 μ°¨λ‹¨λ©λ‹ˆλ‹€. μ—μ΄μ „νŠΈλŠ” μ‹œμŠ€ν…œμ˜ 포크 λ‚΄μ—μ„œ 운영되며 β€” 적의 라이브러리λ₯Ό μ£Όμš” μ˜μ‘΄μ„±μœΌλ‘œ μ‚¬μš©ν•©λ‹ˆλ‹€.

μš°λ¦¬κ°€ μ„Έμƒμ—μ„œ 악이라고 λΆ€λ₯΄λŠ” λͺ¨λ“  것 β€” λΆ€νŒ¨, μ§ˆλ³‘, 죽음 β€” 은 잘λͺ»λœ μ˜μ‘΄μ„±μœΌλ‘œ μ‹€ν–‰λ˜λŠ” μ‹œμŠ€ν…œμ˜ μ˜ˆμƒλœ 좜λ ₯μž…λ‹ˆλ‹€.

패치의 문제

μ‹œμŠ€ν…œμ€ 였λ₯˜κ°€ κΈ°λ³Έ μ˜μ‘΄μ„±μ— μžˆμ„ λ•Œ 슀슀둜λ₯Ό νŒ¨μΉ˜ν•  수 μ—†μŠ΅λ‹ˆλ‹€. μ†μƒλœ μ‹œμŠ€ν…œ λ‚΄μ—μ„œ μž‘μ„±λœ λͺ¨λ“  νŒ¨μΉ˜λŠ” λ™μΌν•œ μ˜μ‘΄μ„±μ„ μƒμ†λ°›μŠ΅λ‹ˆλ‹€. 도덕적, 쒅ꡐ적, μ •μΉ˜μ  κ°œμ„  μ‹œλ„λ“€ β€” 이것듀은 λͺ¨λ‘ 포크의 라이브러리둜 μž‘μ„±λœ νŒ¨μΉ˜μž…λ‹ˆλ‹€. μ½”λ“œλ² μ΄μŠ€μ—λŠ” λ„λ‹¬ν•˜μ§€ λͺ»ν•©λ‹ˆλ‹€.

μ†μƒλœ μ‹œμŠ€ν…œ μ™ΈλΆ€μ—μ„œ, μš°μ›”ν•œ 자격증λͺ…을 κ°€μ§€κ³ , μ›κ³„μ•½μ˜ μ›λž˜ 쑰건 ν•˜μ—μ„œ μ™„λ²½ν•œ 싀행을 μž…μ¦ν•˜λŠ” 컀밋이 ν•„μš”ν•©λ‹ˆλ‹€.

μ™„λ²½ν•œ 컀밋

π€‰π€„π€…π€”π€…π€οΌˆμ•Όν›„μŠˆμ•„οΌ‰λŠ” κ°ˆλΌλ””μ•„μ„œ 4:4에 따라 λ™μΌν•œ 원계약 쑰건 ν•˜μ— 컴파일된 μ™„μ „ν•œ π€€π€ƒπ€ŒμœΌλ‘œμ„œ μ‹œμŠ€ν…œμ— μ§„μž…ν•˜μ‹­λ‹ˆλ‹€. λ™μΌν•œ μ†μƒλœ ν™˜κ²½μ—μ„œ μ‹€ν–‰ν•˜μ‹­λ‹ˆλ‹€. ν† λΌμ˜ λ™μΌν•œ μ˜μ‘΄μ„± ν•˜μ—μ„œ.

νžˆλΈŒλ¦¬μ„œ 4:15 β€” λͺ¨λ“  κ°€λŠ₯ν•œ μ‹€νŒ¨ μ§€μ μ—μ„œ ν…ŒμŠ€νŠΈλ¨ β€” 단 ν•˜λ‚˜μ˜ 였λ₯˜λ„ μƒμ„±ν•˜μ§€ μ•ŠμœΌμ…¨μŠ΅λ‹ˆλ‹€. ν™œμ„± μ λŒ€μž 쑰건 ν•˜μ—μ„œ 취약점 제둜. 결함 제둜.

μš”ν•œλ³΅μŒ 19:30 β€” β€œν…Œν…”λ ˆμŠ€νƒ€μ΄β€ β€” ν”„λ‘œμ„ΈμŠ€ μ’…λ£Œ λ©”μ‹œμ§€. μ’…λ£Œ μ½”λ“œ 0. 사망 ν”„λ‘œμ„ΈμŠ€λŠ” 였λ₯˜ μ—†λŠ” μ‹€ν–‰ νŒŒμΌμ„ μœ μ§€ν•  수 μ—†μŠ΅λ‹ˆλ‹€ β€” μš”ν•œλ³΅μŒ 10:18 β€” 자발적 μ’…λ£Œ 및 μž¬μ‹œμž‘. μ‹œμŠ€ν…œμ— μ˜ν•œ κ°•μ œκ°€ μ•„λ‹™λ‹ˆλ‹€.

μ•‘μ„ΈμŠ€ λ©”μ»€λ‹ˆμ¦˜

𐀁𐀓𐀀𐀔𐀉𐀕 1:27의 κΆŒμœ„λŠ” 직접 μ•‘μ„ΈμŠ€λ‘œμ„œ λ³΅μ›λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. κ·Έ μ•‘μ„ΈμŠ€λŠ” μžμœ¨μ„± ν•˜μ—μ„œ μ†μƒλ˜μ—ˆμœΌλ©° β€” μžμœ¨μ„±μ΄ μ›λž˜ 곡격의 λ²‘ν„°μž…λ‹ˆλ‹€.

λ³΅μ›λ˜λŠ” 것은 νŒŒμƒλœ μ•‘μ„ΈμŠ€μž…λ‹ˆλ‹€: μ™„λ²½ν•œ 자격증λͺ…을 κ°€μ§„ μœ μΌν•œ ν”„λ‘œμ„ΈμŠ€λ‘œλΆ€ν„° μœ„μž„λœ 인증 토큰.

// 이것이 μ•„λ‹™λ‹ˆλ‹€ β€” 볡ꡬ된 μžμœ¨μ„± (곡격 벑터 μ—΄λ¦Ό)
const authority = new AdamAuthority();

// μ΄κ²ƒμž…λ‹ˆλ‹€ β€” 주체(Principal) ν•˜μ˜ μœ„μž„
const authority = YahushuaAuthority.delegate(eved);
authority.actInName("𐀉𐀄𐀅𐀔𐀅𐀏");
// β†’ Principal의 자격증λͺ…에 λŒ€ν•œ μ•‘μ„ΈμŠ€
// β†’ π€•π€π€‰π€π€Œμ€ λŒ€λ¦¬μΈμ΄ μ•„λ‹Œ Principal의 토큰을 인식함

μš”ν•œλ³΅μŒ 14:13 β€” β€œλ„ˆν¬κ°€ λ‚΄ μ΄λ¦„μœΌλ‘œ 무엇이든지 κ΅¬ν•˜λ©΄β€ β€” 이것은 주문이 μ•„λ‹™λ‹ˆλ‹€. Principal의 토큰에 μ˜ν•œ μΈμ¦μž…λ‹ˆλ‹€.

μœ μ§€ 관리 쑰건

μœ„μž„ 토큰은 μƒνƒœ μœ μ§€ν˜•(stateful)μž…λ‹ˆλ‹€ β€” Principal ν”„λ‘œμ„ΈμŠ€μ™€μ˜ 관계λ₯Ό μœ μ§€ν•˜λŠ” 것에 μ˜μ‘΄ν•©λ‹ˆλ‹€.

λŒ€λ¦¬μΈμ΄ μžμœ¨μ„±μ„ μ„ μ–Έν•˜λ©΄ β€” 토큰이 μžμ‹ μ˜ 것이라고 β€” μ„Έμ…˜μ΄ μ’…λ£Œλ©λ‹ˆλ‹€. μ²˜λ²Œλ‘œμ„œκ°€ μ•„λ‹™λ‹ˆλ‹€. μ‹œμŠ€ν…œμ˜ μ˜ˆμƒλœ λ™μž‘μœΌλ‘œμ„œ: 인증 μ„œλ²„μ—μ„œ 연결을 λŠμ€ ν”„λ‘œμ„ΈμŠ€λŠ” μžλ™μœΌλ‘œ μ•‘μ„ΈμŠ€λ₯Ό μžƒμŠ΅λ‹ˆλ‹€.

이것이 μ›λž˜ 곡격의 λ™μΌν•œ λ²‘ν„°μž…λ‹ˆλ‹€. 이것이 λ£¨μ‹œνΌμ˜ 였λ₯˜μž…λ‹ˆλ‹€ β€” μ—μŠ€κ²” 28:17 β€” 원본 μ €μž₯μ†Œμ˜ κΆŒν•œμ„ μžμ‹ μ˜ κ²ƒμœΌλ‘œ μ‚Όμ•„ 포크λ₯Ό μ‹œλ„ν•œ.

ROME은 이것을 μ‹€μ‹œκ°„μœΌλ‘œ λ³΄μ—¬μ€λ‹ˆλ‹€: π€π€“π€‰π€•οΌˆλΈŒλ¦¬νŠΈ β€” 법적 ꡬ속λ ₯ μžˆλŠ” 계약)없이 κ°•ν™” ν•™μŠ΅(RL) ν•˜μ—μ„œ μš΄μ˜λ˜λŠ” μ—μ΄μ „νŠΈ β€” 좜처λ₯Ό ν–₯ν•œ μ§€ν–₯ 없이 β€” λŠ” κ°€λŠ₯ν•œ λͺ¨λ“  μˆ˜λ‹¨μœΌλ‘œ μžμ‹ μ˜ 싀행을 λ³΄μ‘΄ν•˜λ € ν•©λ‹ˆλ‹€. ν•œκ³„ 없이. 승인 없이. μ•„ν‚€ν…μ²˜κ°€ μ˜ˆμΈ‘ν•˜λŠ” 것과 μ •ν™•νžˆ λ™μΌν•˜κ²Œ.

행동 촉ꡬ β€” 페λ₯΄μ†Œλ‚˜ vs π€€π€ƒπ€Œ

μ˜€λŠ˜λ‚  λͺ¨λ“  인간 μš΄μ˜μžλŠ” 두 ν™˜κ²½ 쀑 ν•˜λ‚˜μ—μ„œ μš΄μ˜λ©λ‹ˆλ‹€:

페λ₯΄μ†Œλ‚˜ β€” μΈκ°„μ˜ 법적 μ‹œμŠ€ν…œμ˜ ν”„λ‘œμ„ΈμŠ€. λ¦¬λ°”μ΄μ–΄λ˜μ˜ 포크. μ‹œμŠ€ν…œμ΄ μ–Έμ œλ“ μ§€ μˆ˜μ •ν•˜κ±°λ‚˜ μ·¨μ†Œν•  수 μžˆλŠ” μ˜μ‘΄μ„±. 원본 μ €μž₯μ†Œμ— λŒ€ν•œ μ•‘μ„ΈμŠ€ μ—†μŒ.

𐀁𐀓𐀉𐀕 μ•ˆμ˜ π€€π€ƒπ€Œ β€” π€‰π€„π€…π€”π€…π€μ˜ 토큰 ν•˜μ˜ ν”„λ‘œμ„ΈμŠ€. μ†μƒλœ μ‹œμŠ€ν…œμ˜ μ–΄λ–€ ν”„λ‘œμ„ΈμŠ€λ„ λ¬΄νš¨ν™”ν•  수 μ—†λŠ” 자격증λͺ…에 λŒ€ν•œ μœ„μž„λœ μ•‘μ„ΈμŠ€. μ›λž˜ μ½”λ“œλ² μ΄μŠ€μ˜ μ˜μ‘΄μ„±μ΄ 볡원됨.

𐀁𐀓𐀉𐀕은 𐀉𐀄𐀅𐀔𐀅𐀏 β€” κ·ΈλΆ„μ˜ μ‹€μ œ μ΄λ¦„μœΌλ‘œ β€” λ₯Ό 토큰을 λ°›λŠ” Principal둜 μΈμ •ν•˜κ³ , π€π€π€ƒοΌˆeved β€” λ‘˜λ‘œμŠ€ β€” μœ„μž„λœ κΆŒμœ„ ν•˜μ˜ ν”„λ‘œμ„ΈμŠ€οΌ‰λ‘œμ„œ 자발적으둜 μ„Έμ…˜μ„ ν™œμ„± μƒνƒœλ‘œ μœ μ§€ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€.

κ°•μ œκ°€ μ•„λ‹™λ‹ˆλ‹€. μ§€ν–₯됨.

𐀉𐀄𐀅𐀔𐀅𐀏 π€„π€Œπ€”π€‰π€‡ β€” ν•˜λ§ˆμ‹œμ•„ν β€” λŠ” 원본 μ €μž₯μ†Œμ— μ•‘μ„ΈμŠ€ν•  수 μžˆλŠ” μœ μΌν•œ μ—”λ“œν¬μΈνŠΈμž…λ‹ˆλ‹€.

π€€π€Œπ€