在Pandas中,有没有办法以表格格式有效地提取HDFStore中存在的所有MultiIndex索引?
我可以select()有效地使用where=,但我想要所有索引,而不是所有列.我也可以select()使用iterator=True保存RAM,但这仍然意味着从磁盘读取几乎所有的表,所以它仍然很慢.
我一直在store.root..table.*东西打猎,希望我能得到一个索引值列表.我是在正确的轨道上吗?
计划B将保留一个较短的MultiIndex DataFrame,它只包含每次附加主数据时附加的空DataFrame.我可以检索它并使索引比主要索引便宜得多.虽然不太优雅.
我正在设计应用程序的许可部分。它将使用我的许可服务器中的JWT之类的东西发出声明,称我在工作站上运行的代码将用于启用功能。
服务器将使用其私钥对索赔进行签名,而客户端将使用公钥来验证签名。就目前而言,这将在.NET中使用C#完成。
如果攻击者可以用自己的服务器替换我的服务器的公钥,则他们可以设置伪造的服务器来发布许可声明并启用他们无权使用的功能。
我可以采取哪些步骤使攻击者很难在C#中查找和替换公钥?
具体来说,我应该使用并信任模糊处理库吗?
我知道没有任何保护是绝对的。如果我允许我的代码在我无法控制的机器上运行,那么攻击者只要具备足够的技能,动力和资源,就可以恢复数据。我将以个人或小型公司的资源为中等技能的个人提供足够的辛苦。
我计划研究的开源混淆器之一是ConfuserEx。
编辑:
一些响应者认为我遇到了错误的方法。我谨不同意。这个问题有点类似于攻击者将自己的证书添加到浏览器的证书分数中,并建立了他们自己的欺骗浏览器银行网站。
但是,这里的类比失败了。问题不是PKI的经典问题,即“最终用户的(受信任的)客户端如何验证服务器中的信任”,而是在半敌对环境中的DRM问题。考虑的风险不是失去用户的机密性或完整性,而是控制运行核心应用程序的位置,时间和方式。
到目前为止,我还没有考虑过DRM,但是我认为这是最好的描述,并且我承认那对我不适合。DRM通常会对用户产生负面影响,需要开发人员/提供者付出巨大的努力,但最终还是会失败,有时甚至是微不足道。
尽管如此,我仍然认为原始问题仍然存在,因为我想采取合理的步骤来保护自己的工作。