Binance Square

bip

7,532 مشاهدات
8 يقومون بالنقاش
Anh_ba_Cong - COLE
·
--
هل يمكن اختراق بيتكوين في غضون بضع ساعات؟ مطور يطلق إنذارًا ويقدم حلاًبينما لا يزال معظم المستخدمين يثقون في أمان بيتكوين "الفولاذي"، هناك تهديد خفي يقترب أكثر كل يوم - الحواسيب الكمومية. وأغوستين كروز، مطور بيتكوين من تشيلي، يحاول اتخاذ إجراءات قبل أن تحدث الكارثة. الحواسيب الكمومية: العدو المحتمل لبيتكوين في الوقت الحالي، تستخدم بيتكوين خوارزمية تشفير تُدعى #ECDSA (خوارزمية توقيع رقمي باستخدام المنحنيات البيانية) لضمان أن المالكين الشرعيين فقط يمكنهم إنفاق عدد الـ BTC في المحفظة.

هل يمكن اختراق بيتكوين في غضون بضع ساعات؟ مطور يطلق إنذارًا ويقدم حلاً

بينما لا يزال معظم المستخدمين يثقون في أمان بيتكوين "الفولاذي"، هناك تهديد خفي يقترب أكثر كل يوم - الحواسيب الكمومية. وأغوستين كروز، مطور بيتكوين من تشيلي، يحاول اتخاذ إجراءات قبل أن تحدث الكارثة.

الحواسيب الكمومية: العدو المحتمل لبيتكوين

في الوقت الحالي، تستخدم بيتكوين خوارزمية تشفير تُدعى #ECDSA (خوارزمية توقيع رقمي باستخدام المنحنيات البيانية) لضمان أن المالكين الشرعيين فقط يمكنهم إنفاق عدد الـ BTC في المحفظة.
KITE: البلوكشين للمدفوعات الوكيلة لقد كنت أفكر كثيرًا فيما يعنيه بناء المال والهوية للآلات، ويبدو أن Kite هو أحد تلك المشاريع النادرة التي تحاول مواجهة هذا السؤال بشكل مباشر من خلال إعادة تصميم السكك الحديدية بدلاً من إجبار الوكلاء على الانضغاط في أنظمة تركز على الإنسان، ولهذا السبب أكتب هذا في نفس التنفس المستمر - لمحاولة مطابقة شعور تدفق وكيل حيث تتحرك الهوية والقواعد والقيمة معًا دون احتكاك غير ضروري. $KITE هو، في جوهره، طبقة 1 مصممة خصيصًا للمدفوعات الوكيلية والتنسيق في الوقت الحقيقي بين الممثلين المستقلين #AI ، مما يعني أنهم حافظوا على التوافق مع الأدوات الموجودة في الاعتبار أثناء اختراع أوليات جديدة تهم الآلات، وليس فقط الناس، وتسمح تلك الخيار التصميمي للمطورين بإعادة استخدام ما يعرفونه بينما يقدمون ميزات من الدرجة الأولى للوكلاء يحتاجونها بالفعل. لقد بنوا نموذج هوية مكون من ثلاث طبقات لاحظت أنه يظهر مرارًا وتكرارًا في مستنداتهم وورقة بيضاء لأنهم يحلون مشكلة صعبة بشكل خادع: المحافظ ليست جيدة بما يكفي عندما يحتاج الذكاء الاصطناعي إلى التصرف بشكل مستقل ولكن تحت سلطة إنسان، لذلك تفصل Kite بين هوية المستخدم الجذرية (السلطة الإنسانية أو التنظيمية)، هوية الوكيل (عنوان يمكن تفويضه وحتمي يمثل الممثل المستقل)، وهوية الجلسة (مفتاح زمني لمهام قصيرة الأجل محددة)، وتغير تلك الفجوة كل شيء عن الطريقة التي تفكر بها في المخاطر والتفويض والإلغاء في الممارسة العملية. من الناحية العملية، يعني ذلك إذا كنت تبني وكيلًا يطلب البقالة، يمكن أن يكون لدى ذلك الوكيل عنوانه الخاص على السلسلة وقواعد إنفاق قابلة للبرمجة مرتبطة تشفيرياً بالمستخدم دون الكشف عن مفاتيح المستخدم الرئيسية، وإذا حدث شيء غير صحيح يمكنك سحب مفتاح الجلسة أو تغيير أذونات الوكيل دون تدمير هوية المستخدم الأوسع على السلسلة - أقول لك، إنها نوع من الأمان التشغيلي الذي نعتبره أمرًا مسلمًا به في الخدمات الإنسانية ولكننا لم نحصل عليه للفاعلين الآليين حتى الآن. لم يتوقف المؤسسون عند الهوية؛ يشرحون إطار عمل SPACE في ورقتهم البيضاء - تسوية قائمة على العملات المستقرة، قيود قابلة للبرمجة، مصادقة تركز على الوكيل وما إلى ذلك - لأنه عندما يقوم الوكلاء بإجراء معاملات صغيرة لمكالمات #API ، يجب أن تكون اقتصاديات الوحدة منطقية ويجب أن تكون طبقة التسوية بحاجة إلى رسوم متوقعة، أقل من سنت حتى تكون المدفوعات عالية التردد قابلة للتطبيق، ويعالج خيار Kite لتحسين تسوية العملات المستقرة وزمن استجابة منخفض مباشرة ذلك.

KITE: البلوكشين للمدفوعات الوكيلة

لقد كنت أفكر كثيرًا فيما يعنيه بناء المال والهوية للآلات، ويبدو أن Kite هو أحد تلك المشاريع النادرة التي تحاول مواجهة هذا السؤال بشكل مباشر من خلال إعادة تصميم السكك الحديدية بدلاً من إجبار الوكلاء على الانضغاط في أنظمة تركز على الإنسان، ولهذا السبب أكتب هذا في نفس التنفس المستمر - لمحاولة مطابقة شعور تدفق وكيل حيث تتحرك الهوية والقواعد والقيمة معًا دون احتكاك غير ضروري. $KITE هو، في جوهره، طبقة 1 مصممة خصيصًا للمدفوعات الوكيلية والتنسيق في الوقت الحقيقي بين الممثلين المستقلين #AI ، مما يعني أنهم حافظوا على التوافق مع الأدوات الموجودة في الاعتبار أثناء اختراع أوليات جديدة تهم الآلات، وليس فقط الناس، وتسمح تلك الخيار التصميمي للمطورين بإعادة استخدام ما يعرفونه بينما يقدمون ميزات من الدرجة الأولى للوكلاء يحتاجونها بالفعل. لقد بنوا نموذج هوية مكون من ثلاث طبقات لاحظت أنه يظهر مرارًا وتكرارًا في مستنداتهم وورقة بيضاء لأنهم يحلون مشكلة صعبة بشكل خادع: المحافظ ليست جيدة بما يكفي عندما يحتاج الذكاء الاصطناعي إلى التصرف بشكل مستقل ولكن تحت سلطة إنسان، لذلك تفصل Kite بين هوية المستخدم الجذرية (السلطة الإنسانية أو التنظيمية)، هوية الوكيل (عنوان يمكن تفويضه وحتمي يمثل الممثل المستقل)، وهوية الجلسة (مفتاح زمني لمهام قصيرة الأجل محددة)، وتغير تلك الفجوة كل شيء عن الطريقة التي تفكر بها في المخاطر والتفويض والإلغاء في الممارسة العملية. من الناحية العملية، يعني ذلك إذا كنت تبني وكيلًا يطلب البقالة، يمكن أن يكون لدى ذلك الوكيل عنوانه الخاص على السلسلة وقواعد إنفاق قابلة للبرمجة مرتبطة تشفيرياً بالمستخدم دون الكشف عن مفاتيح المستخدم الرئيسية، وإذا حدث شيء غير صحيح يمكنك سحب مفتاح الجلسة أو تغيير أذونات الوكيل دون تدمير هوية المستخدم الأوسع على السلسلة - أقول لك، إنها نوع من الأمان التشغيلي الذي نعتبره أمرًا مسلمًا به في الخدمات الإنسانية ولكننا لم نحصل عليه للفاعلين الآليين حتى الآن. لم يتوقف المؤسسون عند الهوية؛ يشرحون إطار عمل SPACE في ورقتهم البيضاء - تسوية قائمة على العملات المستقرة، قيود قابلة للبرمجة، مصادقة تركز على الوكيل وما إلى ذلك - لأنه عندما يقوم الوكلاء بإجراء معاملات صغيرة لمكالمات #API ، يجب أن تكون اقتصاديات الوحدة منطقية ويجب أن تكون طبقة التسوية بحاجة إلى رسوم متوقعة، أقل من سنت حتى تكون المدفوعات عالية التردد قابلة للتطبيق، ويعالج خيار Kite لتحسين تسوية العملات المستقرة وزمن استجابة منخفض مباشرة ذلك.
عرض الترجمة
钱包(三)- BIP322.  派生规则 [BIP32] 我们通过BIP39生成了种子,这个种子我们称之为“主种子”,依据BIP32的派生规则,我们可以将“主种子”派生出“主私钥”,“主公钥”,“主链码”,这三个都被称为“密钥”。我们可以继续将“密钥”作为“子种子”派生出“子密钥”(“子私钥”,“子公钥”,“子链码”),以此类推可以无限产生后代,他们都是通过“主种子”衍生出来的,因此“主种子”也被称为“根”。“主私钥”,“主公钥”,“主链码”也被称为“主密钥”。只要我们备份了“助记词”,那就可以导出“根”->“主根”->”子根“等等。  可以看出,每个层次的“密钥”既可以作为直接使用的“私钥”和“公钥”,也可以仅仅作为派生出下一层“密钥”的根,具体如何安排那就要依据“BIP44”协议来决定了。换句话说,BIP32规定了做菜的方法,BIP44规定了做出来的菜是作为下一道菜的食材呢还是直接拿来吃呢。 1)  派生出“主密钥” 将固定字符串“Bitcoin seed”作为密钥“Key”,将“种子”作为数据“Data”输入给函数HMAC-SHA512(Key, Data)生成512位二进制数,取前面256位用以生成“主私钥”,后面256作为“主链码”。依据“主私钥”按照以前所说的公钥生成法生成“主公钥”。 图1,从“种子”出发派生出“主密钥” 2)  派生出“子密钥” 仍然使用HMAC-SHA512(Key, Data)函数来派生子密钥,但输入给函数的参数可能使用“主私钥“,也可能使用”主公钥“,这就有了区别。因为使用“主私钥”的话那就无法通过“普通派生”生成“子公钥”,所以我们把使用“主私钥”的派生方式称作“硬化派生“,而使用“主公钥”的方式称为“普通派生”。 引入一个索引常数index,且当index ≥ 2^31时,使用硬化派生,否则使用普通派生,在BIP32规则中,以下面两个伪函数进行了说明。  CKDpriv(父私钥, 父链码, index) CKDpub(父公钥, 父链码, index)  这两个伪函数都是通过HMAC-SHA512(Key, Data)函数来实现派生的。 Def CKDpriv(k_par, c_par, i):  if I >= 2³¹  data = 0x00 || ser256(k_par) || ser32(i) # 用于硬化派生 else  K_par = point(k_par)  data = serP(K_par) || ser32(i) # 用于普通派生 I = HMAC_SHA512(key = c_par, msg = data)I_L, I_R = I[:32], I[32:] //取左侧256位用作生成子私钥,右侧256位为子链码  k_i = (I_L + k_par) mod n #核心机制c_i = I_R return k_i, c_i  //输入的是“父私钥”和“链码”,得到的是“子私钥”和“子链码” -------------------------------------------------------------- Def CKDpub((K_par, c_par), i):  if i >= 2³¹ // 硬化派生不能用于 CKDpub  throw InvalidChildError  data = serP(K_par)||ser32(i)  I = HMAC-SHA512(Key = c_par, Data = data)  IL, IR = I[0:32], I[32:64]  K_i = point(IL) + K_par //椭圆曲线点加法,核心机制  c_i = IR return (K_i, c_i)  //输入的是“父公钥”和“链码”,得到的是“子公钥”和“子链码” 以上两个函数的功能就是: 硬化派生时: 派生出的“子私钥”依赖于“父私钥”,且无法通过“普通派生”生成“子公钥”,安全性更高 普通派生时: 通过“父私钥”和“父链码”可以得到“子私钥”“子公钥”(这里的“子私钥”和硬化派生出来的“子私钥”是不同的) 通过“父公钥”和“父链码”仅可以得到“子公钥” 这就可以公布“父公钥”和“父链码”,生成观察钱包,由于拿不到父私钥无法生成子私钥,也就不能操作账户了 图2,普通派生时,两个派生函数的区别 “链码”的功能就是确保两个函数生成一致的“子公钥”,并且支持生成“密钥树” 下面再次分开阐述,总结一下两种派生的逻辑思路 (1)  硬化派生 输入:父私钥(k_par),父链码(c_par),索引(i ≥ 2^31) 过程: 计算 I = HMAC-SHA512(c_par, k_par || index) I_L(前 256 位),用于计算子私钥 子私钥,k_i = (k_par + I_L) mod n(n 为椭圆曲线阶) I_R(后 256 位):子链码(c_i) 输出:子私钥(k_i),子链码(c_i) 特点:需要父私钥,无法从父公钥派生,安全性高 (2)  普通派生 输入:父公钥(K_par),父链码(c_par),索引(i < 2^31) 过程: 计算 I = HMAC-SHA512(c_par, K_par || index) I_L:子私钥,k_i = k_par + I_L (mod n) I_R:子链码(c_i) 子公钥:K_i = point(k_i)(点乘,secp256k1 曲线) 输出:子公钥(K_i),子链码(c_i)。 特点:可从父公钥派生,适合建立观察钱包 (3)  密钥树 主密钥为主根,子密钥通过索引逐级派生,形成树状结构 索引范围:0 到 2^32-1(0x00000000 到 0xFFFFFFFF) 硬化索引:2^31 到 2^32-1(0x80000000 到 0xFFFFFFFF) 非硬化索引:0 到 2^31-1(0x00000000 到 0x7FFFFFFF) #钱包 #Wallet #BIP

钱包(三)- BIP32

2.  派生规则 [BIP32]
我们通过BIP39生成了种子,这个种子我们称之为“主种子”,依据BIP32的派生规则,我们可以将“主种子”派生出“主私钥”,“主公钥”,“主链码”,这三个都被称为“密钥”。我们可以继续将“密钥”作为“子种子”派生出“子密钥”(“子私钥”,“子公钥”,“子链码”),以此类推可以无限产生后代,他们都是通过“主种子”衍生出来的,因此“主种子”也被称为“根”。“主私钥”,“主公钥”,“主链码”也被称为“主密钥”。只要我们备份了“助记词”,那就可以导出“根”->“主根”->”子根“等等。 
可以看出,每个层次的“密钥”既可以作为直接使用的“私钥”和“公钥”,也可以仅仅作为派生出下一层“密钥”的根,具体如何安排那就要依据“BIP44”协议来决定了。换句话说,BIP32规定了做菜的方法,BIP44规定了做出来的菜是作为下一道菜的食材呢还是直接拿来吃呢。
1)  派生出“主密钥”
将固定字符串“Bitcoin seed”作为密钥“Key”,将“种子”作为数据“Data”输入给函数HMAC-SHA512(Key, Data)生成512位二进制数,取前面256位用以生成“主私钥”,后面256作为“主链码”。依据“主私钥”按照以前所说的公钥生成法生成“主公钥”。

图1,从“种子”出发派生出“主密钥”
2)  派生出“子密钥”
仍然使用HMAC-SHA512(Key, Data)函数来派生子密钥,但输入给函数的参数可能使用“主私钥“,也可能使用”主公钥“,这就有了区别。因为使用“主私钥”的话那就无法通过“普通派生”生成“子公钥”,所以我们把使用“主私钥”的派生方式称作“硬化派生“,而使用“主公钥”的方式称为“普通派生”。
引入一个索引常数index,且当index ≥ 2^31时,使用硬化派生,否则使用普通派生,在BIP32规则中,以下面两个伪函数进行了说明。 
CKDpriv(父私钥, 父链码, index)
CKDpub(父公钥, 父链码, index) 
这两个伪函数都是通过HMAC-SHA512(Key, Data)函数来实现派生的。

Def CKDpriv(k_par, c_par, i): 

if I >= 2³¹ 
data = 0x00 || ser256(k_par) || ser32(i) # 用于硬化派生

else 
K_par = point(k_par) 
data = serP(K_par) || ser32(i) # 用于普通派生

I = HMAC_SHA512(key = c_par, msg = data)I_L, I_R = I[:32], I[32:]
//取左侧256位用作生成子私钥,右侧256位为子链码 

k_i = (I_L + k_par) mod n #核心机制c_i = I_R return k_i, c_i 
//输入的是“父私钥”和“链码”,得到的是“子私钥”和“子链码”
--------------------------------------------------------------
Def CKDpub((K_par, c_par), i): 
if i >= 2³¹ // 硬化派生不能用于 CKDpub 
throw InvalidChildError 

data = serP(K_par)||ser32(i) 
I = HMAC-SHA512(Key = c_par, Data = data) 
IL, IR = I[0:32], I[32:64] 

K_i = point(IL) + K_par //椭圆曲线点加法,核心机制 

c_i = IR return (K_i, c_i) 
//输入的是“父公钥”和“链码”,得到的是“子公钥”和“子链码”

以上两个函数的功能就是:
硬化派生时:
派生出的“子私钥”依赖于“父私钥”,且无法通过“普通派生”生成“子公钥”,安全性更高
普通派生时:
通过“父私钥”和“父链码”可以得到“子私钥”“子公钥”(这里的“子私钥”和硬化派生出来的“子私钥”是不同的)
通过“父公钥”和“父链码”仅可以得到“子公钥”
这就可以公布“父公钥”和“父链码”,生成观察钱包,由于拿不到父私钥无法生成子私钥,也就不能操作账户了

图2,普通派生时,两个派生函数的区别
“链码”的功能就是确保两个函数生成一致的“子公钥”,并且支持生成“密钥树”
下面再次分开阐述,总结一下两种派生的逻辑思路
(1)  硬化派生
输入:父私钥(k_par),父链码(c_par),索引(i ≥ 2^31)
过程:
计算 I = HMAC-SHA512(c_par, k_par || index)
I_L(前 256 位),用于计算子私钥
子私钥,k_i = (k_par + I_L) mod n(n 为椭圆曲线阶)
I_R(后 256 位):子链码(c_i)
输出:子私钥(k_i),子链码(c_i)
特点:需要父私钥,无法从父公钥派生,安全性高
(2)  普通派生
输入:父公钥(K_par),父链码(c_par),索引(i < 2^31)
过程:
计算 I = HMAC-SHA512(c_par, K_par || index)
I_L:子私钥,k_i = k_par + I_L (mod n)
I_R:子链码(c_i)
子公钥:K_i = point(k_i)(点乘,secp256k1 曲线)
输出:子公钥(K_i),子链码(c_i)。
特点:可从父公钥派生,适合建立观察钱包
(3)  密钥树
主密钥为主根,子密钥通过索引逐级派生,形成树状结构
索引范围:0 到 2^32-1(0x00000000 到 0xFFFFFFFF)
硬化索引:2^31 到 2^32-1(0x80000000 到 0xFFFFFFFF)
非硬化索引:0 到 2^31-1(0x00000000 到 0x7FFFFFFF)

#钱包 #Wallet #BIP
عرض الترجمة
钱包(五)- BIP44标准与未来企业未来的企业一定会走向智能化,财务管理也一定会大变样,从BIP44我们就可以看出端倪了,未来三十年社会会发展成什么样还真不好说。 #钱包 #BIP

钱包(五)- BIP44标准与未来企业

未来的企业一定会走向智能化,财务管理也一定会大变样,从BIP44我们就可以看出端倪了,未来三十年社会会发展成什么样还真不好说。

#钱包 #BIP
سجّل الدخول لاستكشاف المزيد من المُحتوى
استكشف أحدث أخبار العملات الرقمية
⚡️ كُن جزءًا من أحدث النقاشات في مجال العملات الرقمية
💬 تفاعل مع صنّاع المُحتوى المُفضّلين لديك
👍 استمتع بالمحتوى الذي يثير اهتمامك
البريد الإلكتروني / رقم الهاتف