第六章一般習題

pages 157 - 159

6.1.3. 在一沙密爾(3,5)-門檻法中，所用質數為p=17且將下列股份給三毛、四郎及五爺： (1,8), (3,10), (5,11)。請算出其對應之拉格蘭茲內插多項式並指認出其秘密。

PolynomialMod[InterpolatingPolynomial[{{1, 8}, {3, 10}, {5, 11}}, x], 
      17]

6.1.4. 在一沙密爾秘密分享法中，其秘密是一個四次多項式的常數項而所用質數為p=1093。有三個人持有(2,197), (4,874) 與(13,547)。請問此秘密的可能性總共有多少？

p = 1093; p^2

6.1.11. 假設房裏有四人，其中正有一外間。其他三人持有對應於一任兩人可決定秘密的沙密爾分享法的數對。那外間持有隨機選出的數對。這些人及數對如下。都是在模 11 的之下：甲：(1,4) 乙：(3,7)  丙：(5,1)  丁：(7,2)。請問老外間諜是那一位，而秘密是什麼？

PolynomialMod[InterpolatingPolynomial[{{1, 4}, {3, 7}}, x], 
      11]
PolynomialMod[InterpolatingPolynomial[{{1, 4}, {5, 1}}, x], 
      11]
PolynomialMod[InterpolatingPolynomial[{{1, 4}, {7, 2}}, x], 
      11]

老外間諜是丙, 秘密是8; 確認如下：

PolynomialMod[InterpolatingPolynomial[{{3, 7}, {7, 2}}, x], 
      11]

第六章電腦習題

page 159

6.2.1. 在(4,7)-門檻法中，質數p=8737股份為(1,214), (2,7543), (3,6912), (4,8223), (5,3904), (6,3857), (7,510)。取其中四股並求其秘密，再另取四股並證所得是一樣的。

p = 8737; a = {1, 214}; b = {2, 7543}; c = {3, 6912}; d = {4, 8223}; 
    e = {5, 3904}; f = {6, 3857}; 
    g = {7, 510}; {PolynomialMod[InterpolatingPolynomial[{a, b, c, d}, x], 
        p], PolynomialMod[InterpolatingPolynomial[{e, b, g, d}, x], 
        p]}

6.2.2. 三毛、四郎、五爺及六哥使用(2,4)-門檻法，質數為p=984583。假設三毛股是(38,358910), 四郎股是(3876,9612), 五爺股是(23112,28774), 而六哥股是(432,178067)。這四股之一是不正確的。請問是那一個並找出此秘密？

p = 984583; a3 = {38, 358910}; a4 = {3876, 9612}; a5 = {23112, 28774}; 
    a6 = {432, 178067}; {PolynomialMod[InterpolatingPolynomial[{a3, a4}, x], 
        p], PolynomialMod[InterpolatingPolynomial[{a3, a5}, x], p], 
      PolynomialMod[InterpolatingPolynomial[{a3, a6}, x], p]}

推論出不正確的是四郎的, 秘密是21502; 確認如下：

PolynomialMod[InterpolatingPolynomial[{a5, a6}, x], p]