前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >临时记录, 替换最新版的mbedtls

临时记录, 替换最新版的mbedtls

作者头像
杨奉武
发布2024-01-13 10:30:16
1810
发布2024-01-13 10:30:16
举报
文章被收录于专栏:知识分享知识分享

由于老版本的mbedtls对于一些ssl 的服务器是连接不上的, 所以需要替换最新的版本

下面是记录替换过程

https://github.com/Mbed-TLS/mbedtls

下载最新版的mbedtls源码, 然后把下面两个文件拷贝到原先的工程里面,替换掉原先的文件

编译后会有很多错误, 这种错误应该是编译器不支持,  那就打开C99模式

发现不能这样子, 需要先把原先的删除

 再拷贝过去

然后再建一个Mbedtls 分组

把 Library 里面的文件全部添加到里面

把下面的改下

mbedtls_config

把mbedtls_config里面所有的#define全部屏蔽

咱以后用到什么功能再打开什么功能.

需要屏蔽的很多,自己慢慢的屏蔽!

屏蔽完编译一下工程, 改下

mbedtls_config.h打开以下宏

#define MBEDTLS_HAVE_ASM

#define MBEDTLS_NO_UDBL_DIVISION

#define MBEDTLS_HAVE_TIME

#define MBEDTLS_ENTROPY_HARDWARE_ALT

#define MBEDTLS_AES_ROM_TABLES

#define MBEDTLS_CIPHER_MODE_CBC

#define MBEDTLS_KEY_EXCHANGE_RSA_ENABLED

#define MBEDTLS_NO_PLATFORM_ENTROPY

#define MBEDTLS_PKCS1_V15

#define MBEDTLS_SSL_PROTO_TLS1_2

#define MBEDTLS_AES_C

#define MBEDTLS_ASN1_PARSE_C

#define MBEDTLS_ASN1_WRITE_C

#define MBEDTLS_BIGNUM_C

#define MBEDTLS_CIPHER_C

#define MBEDTLS_CTR_DRBG_C

#define MBEDTLS_ENTROPY_C

#define MBEDTLS_GCM_C

#define MBEDTLS_MD_C

#define MBEDTLS_MD5_C

#define MBEDTLS_OID_C

#define MBEDTLS_PK_C

#define MBEDTLS_PK_PARSE_C

#define MBEDTLS_PLATFORM_C

#define MBEDTLS_RSA_C

#define MBEDTLS_SHA1_C

#define MBEDTLS_SHA256_C

#define MBEDTLS_SHA512_C

#define MBEDTLS_SSL_CLI_C

#define MBEDTLS_SSL_TLS_C

#define MBEDTLS_X509_USE_C

#define MBEDTLS_X509_CRT_PARSE_C

然后还会报一个没有提供时间的函数

程序里面开一个1ms的定时器, 然后定义一个uint64_t的变量,放到定时器里面累加

然后把报错的地方改下

mbedtls_ms_time_t mbedtls_ms_time(void) { mbedtls_ms_time_t current_ms;

current_ms = sys_tick_get_timer(); return current_ms; }

编译测试, 以前访问不到的ssl现在就可以了

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-01-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 由于老版本的mbedtls对于一些ssl 的服务器是连接不上的, 所以需要替换最新的版本
  • 下面是记录替换过程
    • https://github.com/Mbed-TLS/mbedtls
    相关产品与服务
    腾讯云服务器利旧
    云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档