一、应用场景
- 有一个房间,里面放的是某公司的机密文件。如何设计该房间的门钥匙比较合理呢?有以下几种可选方案。
- 方案一:给其中一个人,只有这个人能够打开该房间。
- 方案二:给n个人,只有这n个人都到齐了,才能开门。
- 方案三:给n个人,只要其中t(t<n)个人到了,就能开门。
- 我们在来分析一下这几种钥匙分配方法的利与弊:
- 如果只给一个人,那么这个人就可以为所欲为,如果某天他心情不好了,那就可以拿着资料跑路了。。。。
- 如果采用了方案二,某天公司领导得罪了这n个人中的一人,然后这家伙第二天直接消失了。那这个房间就成为永恒的秘密了,任何人休想进去。
- 看了前两个,第三种方案明显要好一些,当然它也有缺点,我们先不赘述了。
二、实现算法
- 加密原理:
- 算法实现: