你可以将文件中的字节流式传输到任何程序吗?

时间:2017-05-25 12:59:39

标签: java file encryption

所以我有这个想法,但我不知道是否可能......

这是一个想法:

  

作为一个例子,我将使用.doc文件和单词。我想加密这个   .doc文件到.encrypt文件。然后在我的程序中解密文件并强制单词加载文件对象。

或者我是否需要解密文件,将其写入硬盘然后打开/编辑保存文件,然后再对其进行加密?

还是有其他方法我没有想过吗?

希望你们中的一些人可以提供帮助:)

1 个答案:

答案 0 :(得分:1)

你可以,但有一些工作要实现它。 Microsoft对象链接和嵌入(OLE)和公共对象模型(COM)提供您需要的一切。 AFAIK,它不能移植到任何其他架构,但您可以在Windows上构建它。对代码示例的详细解释对于SO答案来说太大了,所以我只是指点一下。

这里需要的是构建一个能够支持Word对象作为COM服务器的COM客户端。您的客户端应该能够通过自定义名字对象提供加密存储。它应该可以工作,因为它或多或少是你可以在Excell工作表中包含Word对象的方式。

如果您对COM编程没有什么经验,请不要直接尝试。如果您不了解Microsoft高级模板库,请不要尝试。恕我直言的要求是:

  • MSCV环境及其完整文档
  • COM客户端和服务器的示例 - 如果您尚未构建它们,请按照MSVC doc中的教程进行操作
  • 嵌入对象的持久性示例 - 同上以下教程

完成所有这些后,您应该能够指定并构建包含Word对象的专用OLE客户端并为其提供加密存储。祝你好运...

但是,不要指望比通过Word处理文件并在完成时再次加密文件更加安全。好吧,它将免于脚本小子寻找.doc或.docx文件,但只要在Word for edition中加载文档,Word程序就可以被操作(通过自动化,或通过直接发送键盘消息)邪恶的一段代码。从安全角度或视图来看,如果您的机器中存在您无法信任的内容,则不再(仅限)您的机器。