C++托管程序实现安全管理

C++编程语言中对于程序的安全性操作也是比较简单的。我们可以通过C++托管程序来进行程序的安全管理。那么如何才能正确的实现这一功能呢?在这里我们将会为大家详细介绍一下C++托管程序的相关概念。

一般,C++托管程序要保护的有核心算法和敏感数据。

1、保护核心算法:用C++开发组件

2、保护敏感数据:用C++程序+C++托管组件,不能单纯用组件

为什么说保护敏感数据不能用C++组件?

常见的敏感数据有数据库连接串、密钥,如果通过组件接口通信,对于一些会编程的人而言,很容易通过编程截获;因为:

a、若对组件的设计时进行授权:即使实现了,因为接口信息在反编译工具很容易得到;破解者至少拥有了运行时的授权

b、破解者可以通过Ilasm工具来变更注册CheckPoint进行修改

所以,只有不能被编译的代码才是较为“安全”的,而目前只能C++托管程序才能兼有保护和易开发的优点。下面具体说说方案:

1、思想:通过C++托管程序调用C#.net组件,其中C++托管程序部分作为容器,C#.net组件作为应用

2、实现

a.创建一C++托管组件,新建一C++类,由该类接收敏感数据;调用C#.net组件

b.创建一C++Win32应用程序,通过Regasm调用C++托管组件

c++

相关推荐