我正在阅读有关 XPCOM 组件开发的信息。我遇到了这些称为白名单数据和黑名单数据的术语,我试图在谷歌上找到但找不到..我不知道它与编程有什么关系,所以如果我把问题放在错误的地方请见谅..
5 回答
白名单和黑名单是过滤数据的两种方式。如果您有白名单,那么您将只过滤白名单上的数据;如果您有黑名单,您将只过滤掉该名单上的数据。
例如,考虑自动拒绝来电。你可以有一个营销公司的黑名单,所以除了他们之外的每个人都可以给你打电话。或者你可以有一个包含你朋友号码的白名单,这样只有他们才能给你打电话。
TL;博士:
- 白名单 - 只有这些东西。
- 黑名单 - 除了这些东西之外的一切。
我不知道它与您的 XPCOM 组件有何关系,但总的来说:
- 白名单是您知道是好的事情的列表
- 黑名单是您知道不好的事情的列表。
垃圾邮件过滤器就是一个很好的例子——你有一个白名单,你愿意在不检查垃圾邮件的情况下接收来自哪些人的电子邮件,还有一个已知垃圾邮件发送者的黑名单,他们的电子邮件会被自动删除。可以使用贝叶斯过滤器(或类似过滤器)检查来自不在这两个列表中的任何人的电子邮件,以确定它们是否看起来像垃圾邮件。
Bruce Schneier 对计算机安全背景下的黑名单与白名单有很好的解释:https ://www.schneier.com/blog/archives/2011/01/whitelisting_vs.html 。
物理安全通常在白名单模式下工作:如果你有钥匙,你可以开门;如果你知道密码,你就可以打开锁。我们这样做并不是因为它更容易——尽管列出应该允许通过办公室门的人员的名单通常比列出不应该允许的人员名单要容易得多——而是因为它是一个安全系统,可以自动执行,无需人员。
要在现实世界中找到黑名单,您必须开始查看几乎每个人都被允许的环境。赌场就是一个很好的例子:每个人都可以进来赌博,除了那些在赌场的黑皮书或更一般的格里芬书上特别列出的少数人。一些零售店也有同样的模式——谷歌搜索“禁止进入沃尔玛”会产生 150 万次点击,包括梅根福克斯——尽管你不得不怀疑执法。沃尔玛是否拥有与赌场相同的安保人员?
白名单是一个列表,您可以在应用程序中使用它来满足功能的进一步需要,而黑名单是您在应用程序中进一步前进时对娱乐不感兴趣的列表。