OracleSpatial数据加密问题研究

发表于:2007-05-25来源:作者:点击数: 标签:
Oracle 9i2 特色功能: 1、返回值为自定义对象类型的函数。例如SDO_GEOMETRY数据类型。 2、可以用 Java 或C语言编写存储过程。 Oracle Spatial 高级功能: 可以使用返回值为SDO_GEOMETRY数据类型的自定义函数作为几何列获取空间数据。 加密实现: 1、简单的

Oracle 9i2 特色功能:
        1、返回值为自定义对象类型的函数。例如SDO_GEOMETRY数据类型。
        2、可以用Java或C语言编写存储过程。÷
Oracle Spatial 高级功能:
        可以使用返回值为SDO_GEOMETRY数据类型的自定义函数作为几何列获取空间数据。
         
加密实现:

    1、简单的数据加密。
         1)创建返回值为SDO_GEOMETRY数据类型的自定义函数,从BLOB(或其他任意的数据类型)数据中解密出SDO_GEOMETRY数据并返回。
         2)解密过程需要给函数传入一个密钥参数,这个密钥参数来自于你的客户端程序或Web应用程序。
         这样,别人就无法解析你存储于Spatial中的数据了。
    
2、高级的数据加密。
          1)用C语言创建返回值为SDO_GEOMETRY数据类型的自定义函数,从BLOB(或其他任意的数据类型)数据中解密出SDO_GEOMETRY数据并返回。这一步需要有OCI接口相关的编程技术,因此实现难度稍高一些。
          2)C语言程序读取机器的硬件码,经过运算后得出服务端的密钥。
          3)读取数据时还要给函数传入客户端的密钥参数,两个密钥结合才是可以对数据进行解密的最终密钥。当然,数据入库时也要用相应的密钥进行加密。
          这样,你的空间数据就仅仅可以被特定的客户端和服务器所获取,其他程序无法获取。
      
八风不动2004年11月23日涂鸦于大连


原文转自:http://www.ltesting.net