如何在C中用字符串文字存储私钥?
例如
-----BEGIN RSA PRIVATE KEY-----
MIIBOgIBAAJBANuwDJCXuv/FszouyCcDNIn6++/8EtdVpzvLKpqLdK/fq6Y3bIjD
6fPVCNwANeJsSHKexi4qPkBpZ8/C0Ssnp48CAwEAAQJAHtDmIk42W/R2fJ3dU6Oe
dhBv0K0SU4RfTgLkugL/3j+GIQCiFXBkfO/eG6J8vQlOQaGbK7Zu6bSnCoCdiDmR
sQIhAPysf1AIbRoQGO6HYtAoTUOMlih7dyh4O3jKCqQUa60XAiEA3pRju0/0g2JK
bdSct/kqii1o+RydH79WCnKVgVvulEkCIFdbRADliOLT4erFv/H7nQrXliqU1ROW
zejq4VbtAHUtAiBRP5OkRYx5BUEsFGdc1MyNggQGo0ZL13ld+PPQM7HEWQIhAIU1
InlMgmqV1GzEXsAwRH5RH2zEqAe9mKkU7SZWT0rI
-----END RSA PRIVATE KEY-----
我可以删除每行中的换行符吗?
在C中定义多行字符串文字的最佳方法是什么?
最佳答案
无视与这种“解决方案”相关的安全问题,您可以这样做:
const char* key =
"MIIBOgIBAAJBANuwDJCXuv/FszouyCcDNIn6++/8EtdVpzvLKpqLdK/fq6Y3bIjD"
"6fPVCNwANeJsSHKexi4qPkBpZ8/C0Ssnp48CAwEAAQJAHtDmIk42W/R2fJ3dU6Oe"
"dhBv0K0SU4RfTgLkugL/3j+GIQCiFXBkfO/eG6J8vQlOQaGbK7Zu6bSnCoCdiDmR"
"sQIhAPysf1AIbRoQGO6HYtAoTUOMlih7dyh4O3jKCqQUa60XAiEA3pRju0/0g2JK"
"bdSct/kqii1o+RydH79WCnKVgVvulEkCIFdbRADliOLT4erFv/H7nQrXliqU1ROW"
"zejq4VbtAHUtAiBRP5OkRYx5BUEsFGdc1MyNggQGo0ZL13ld+PPQM7HEWQIhAIU1"
"InlMgmqV1GzEXsAwRH5RH2zEqAe9mKkU7SZWT0rI";
指针现在指向嵌入在可执行文件中的私钥它不包括换行符,因为这些字符串文本在编译时会自动连接起来,不管它们之间的空格是什么。
已经说过了,但我想重申,这样的事情不应该用任何重要的键和数据来完成。
关于c - 如何在C的字符串文字中存储私钥?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52753968/