草庐IT

存储算法

全部标签

c# - Windows 操作系统如何检测算法是否符合 FIPS?

当强制使用符合FIPS的算法的Windows设置打开时,如果有一个应用程序在该机器上运行使用不符合FIPS的算法,并且该应用程序会抛出异常,说明它不是WindowsFIPS的一部分执行...我看到有人通过在应用程序代码中注释掉此检查来绕过FIPS检查。如果可以做到这一点,这是否真正符合FIPS标准?Windows如何检测应用程序是否使用符合FIPS的算法? 最佳答案 这些算法由内置于Windows中的库或由Microsoft提供的产品提供,它们包含投诉和非投诉算法。当您的代码调用那些内置库时,这些库包含对窗口设置的检查,如果设置了这

c# - 在哪里存储 Windows 服务的 X509 证书?

我有一个通常使用本地系统帐户运行的Windows服务(尽管在某些安装中它可能作为特定用户帐户运行)。该服务使用WCF,并使用X509证书保护通信。我的问题是,存储证书(和私钥)的最佳位置在哪里?如果使用证书存储是最好的方法,我应该使用哪种方法来确保只有管理员和服务才能访问私钥?或者,一个简单的选择是将两者作为PFX文件简单地存储在磁盘上,并使用ACL确保只有管理员和服务可以访问它。与使用证书存储相比,这种方法的优缺点是什么?编辑澄清一下,我将C#与.NETFramework3.5结合使用 最佳答案 首先,我建议您将证书保存在证书存储

C# Maze Generation 我自己实现的Prim的算法Bug

首先让我为尺寸道歉我会尽量保持它尽可能小在尝试完全按照维基百科上所说的那样构建prim的算法后,我发现它无法按照我构建的迷宫方式运行。所以我尝试做同样的想法来适应我的迷宫,但我看到了一个奇怪的错误,当我的游戏开始时,它只是没有正确地build我的迷宫,我不知道为什么这是偶尔发生的事情其他时候它工作得很好,所以我有一个publicDictionary>maze当它开始时,它占据了迷宫,迷宫是所有的树篱,然后我继续像这样build路径privatestaticvoidbuildPath(){List>ends=newList>();ends.Add(newKeyValuePair(newM

windows - Windows证书存储中的私钥安全

当我将公共(public)/私有(private)对导入Windows证书存储区时,Windows不需要任何类型的密码来加密key。由此我得出结论,如果它是用户的商店,它会使用用户的密码(或者可能是用户的散列密码)来加密私钥,如果是本地机器商店,它可能是某种用于加密私钥的基于硬件的key。我做对了吗???如果我这样做了,如果我可以解密key,那么不可导出key的意义何在???最后一个问题-如果我到此为止,还有哪些选择? 最佳答案 正如“SLanks”链接所解释的那样,私钥是用用户密码或机器密码加密的(取决于key在商店中的位置)。因

c# - 客户端和服务器无法通信,因为它们不具备通用算法,C# SslStream

以下是我在Windows10上为客户端/服务器控制台应用程序进行相互SSL身份验证的设置:有一个服务器监听器控制台应用程序只接受TLS1.0连接。客户端控制台应用程序使用SslStream.AuthenticateAsClient配置安全连接并使用TLS1.2连接。我使用以下示例进行相互SSL身份验证:http://www.codeproject.com/Articles/326574/An-Introduction-to-Mutual-SSL-Authentication服务器代码:sslStream.AuthenticateAsServer(certificate,true,Ssl

windows - 启用存储空间时获取物理磁盘的信息

当启用Windows10存储空间时,我需要获取系统中所有物理磁盘的以下信息。模型序列号固件版本容量磁盘索引磁盘的PnpId(使用CM_Get_Parent获取SCSIController名称)位置信息(总线编号、目标ID和LUN)到目前为止我尝试了什么:使用WMI类MSFT_PhysicalDisk虽然这个类给了我适配器号(所以我可以不用磁盘PNP),但当磁盘连接到不同的PCI存储Controller(例如Marvell92xxSATA6gController)时,它提供的位置信息并不完整。二手SetupDiGetClassDevs使用GUID_DEVINTERFACE_DISK,将句

c# - Windows Azure 持久存储技巧

我刚刚激活了我的Azure帐户,创建了第一个AspMvc3.0项目(只是模板)并部署了它:)。精彩但是我正准备创建一个小应用程序(只是为了学习Azure)并且遇到了一个小问题。这是我想做的:创建一个显示我的音乐库并允许搜索、排序、添加新专辑等的mvc应用程序。大概有3000张专辑。我应该使用什么样的存储,有谁知道关于如何在c#和mvc中执行此操作的好教程示例?请注意,我不想使用SQLAzure,那太容易了。我需要深入学习blob/table/?类型。我只需要一个关于我应该开始研究哪种存储类型的声音建议,更重要的是我应该研究它的地方:)。 最佳答案

php - 如何存储非 ASCII 文件名的上传文件?

我无法将UTF-8文件名传递给move_uploaded_file()因为它按字节转换,导致文件系统中的名称错误。例如:move_uploaded_file($_FILES['userfile']['tmp_name'],'\upload\é.jpg');在上传目录中创建xa9.jpg。虽然WindowsAPI支持UTF-16,但将此类文件名(例如iconv('UTF-8','UTF-16','é'))传递给move_uploaded_file()导致错误。percent-encode所有特殊字符是合理的,根据RFC3986,我绝对应该对URI做同样的事情。.但是,当我使用百分比编码的

windows - 在数据库中存储 X509 证书 - 是或否?

我发现自己需要为内部应用程序存储公钥证书和一个私钥证书。我们团队的一名成员建议将X509证书存储在数据库中,而不是像我们迄今为止一直在做的那样将其存储在Windows证书存储中。我不喜欢重新发明轮子,但我至少必须考虑这个想法。这意味着让我们的数据更加集中,我想这很好。我能看到的最初障碍是:私钥仍然需要存储在某个地方,我不知道将它硬塞进“公钥”表中是否是个好主意。我也不喜欢为单个元素设置表格的想法。也许只是将私钥保存为本地文件?(例如.pfx文件)。撤销列表。我们可能必须设置一个流程来处理已撤销的公钥。我在X509证书方面没有太多经验,所以,我的问题是:在数据库中存储公钥证书而不是使用W

windows - BSD 以外的操作系统的原子加载/存储?

在BSD提供的原子操作中(在atomic(9)手册页中给出),有atomic_load_acq_int()和atomic_store_rel_int()。在寻找其他操作系统的等效项时(例如,通过阅读MacOSX的atomic(3)手册页,Solaris的atomic_ops(3C)手册页,和Windows的Interlocked*()函数),似乎没有任何(明显的)等价物用于原子地读/写int。这是因为它暗示那些为int读/写的操作系统默认保证是原子的吗?(或者你必须在C/C++中使用declarethemvolatile吗?)如果不是,那么如何在这些操作系统上对int进行原子读/写?(