本的密碼學在我上一次鐵人賽就說過了,這次就直接進入主題,所以不懂得可以看我去年的文章喔!
金鑰衍生函數Key derivation function,簡單說就是為了避免隨機選過於不隨機,並且加強了安全度。
可能你會不懂什麼是不隨機。理論上隨機選是很平均的;但現實卻不平均。
假設叫你從1~10裡面選1個,你可能選3,那下一次你可能會選非3的數字,但也有可能會選3,如果我們選多次一點平均下來看,還是會發現每個數字被選的機率是不一樣的,並不是每一個都是10分之1。
所以才會有偽隨機函數pseudo random function。
比如我們在橢圓曲線密碼學ECC,要選一個隨機數x並且會算出對應的y,那個這個x就可以被金鑰衍生函數去做運算
除了公開金鑰密碼的ECC外,對稱式金鑰的AES和Diffie-Hellman金鑰交換也是能使用。而HMAC就是最常使用到的地方。