RetroArch
gcm.h
Go to the documentation of this file.
1 
23 #ifndef MBEDTLS_GCM_H
24 #define MBEDTLS_GCM_H
25 
26 #include "cipher.h"
27 
28 #include <stdint.h>
29 
30 #define MBEDTLS_GCM_ENCRYPT 1
31 #define MBEDTLS_GCM_DECRYPT 0
32 
33 #define MBEDTLS_ERR_GCM_AUTH_FAILED -0x0012
34 #define MBEDTLS_ERR_GCM_BAD_INPUT -0x0014
36 #ifdef __cplusplus
37 extern "C" {
38 #endif
39 
43 typedef struct {
45  uint64_t HL[16];
46  uint64_t HH[16];
49  unsigned char base_ectr[16];
50  unsigned char y[16];
51  unsigned char buf[16];
52  int mode;
53 }
55 
64 
76  mbedtls_cipher_id_t cipher,
77  const unsigned char *key,
78  unsigned int keybits );
79 
103  int mode,
104  size_t length,
105  const unsigned char *iv,
106  size_t iv_len,
107  const unsigned char *add,
108  size_t add_len,
109  const unsigned char *input,
110  unsigned char *output,
111  size_t tag_len,
112  unsigned char *tag );
113 
136  size_t length,
137  const unsigned char *iv,
138  size_t iv_len,
139  const unsigned char *add,
140  size_t add_len,
141  const unsigned char *tag,
142  size_t tag_len,
143  const unsigned char *input,
144  unsigned char *output );
145 
159  int mode,
160  const unsigned char *iv,
161  size_t iv_len,
162  const unsigned char *add,
163  size_t add_len );
164 
183  size_t length,
184  const unsigned char *input,
185  unsigned char *output );
186 
199  unsigned char *tag,
200  size_t tag_len );
201 
208 
214 int mbedtls_gcm_self_test( int verbose );
215 
216 #ifdef __cplusplus
217 }
218 #endif
219 
220 #endif /* gcm.h */
int mbedtls_gcm_setkey(mbedtls_gcm_context *ctx, mbedtls_cipher_id_t cipher, const unsigned char *key, unsigned int keybits)
GCM initialization (encryption)
Definition: gcm.c:158
GLenum mode
Definition: glext.h:6857
static const unsigned char tag[MAX_TESTS *3][16]
Definition: gcm.c:696
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:8418
int mbedtls_gcm_auth_decrypt(mbedtls_gcm_context *ctx, size_t length, const unsigned char *iv, size_t iv_len, const unsigned char *add, size_t add_len, const unsigned char *tag, size_t tag_len, const unsigned char *input, unsigned char *output)
GCM buffer authenticated decryption using a block cipher.
Definition: gcm.c:466
uint64_t add_len
Definition: gcm.h:48
static const size_t add_len[NB_TESTS]
Definition: ccm.c:382
int mbedtls_gcm_finish(mbedtls_gcm_context *ctx, unsigned char *tag, size_t tag_len)
Generic GCM finalisation function. Wraps up the GCM stream and generates the tag. The tag can have a ...
Definition: gcm.c:405
void mbedtls_gcm_free(mbedtls_gcm_context *ctx)
Free a GCM context and underlying cipher sub-context.
Definition: gcm.c:502
GLenum GLenum GLenum input
Definition: glext.h:9938
GCM context structure.
Definition: gcm.h:43
int mbedtls_gcm_starts(mbedtls_gcm_context *ctx, int mode, const unsigned char *iv, size_t iv_len, const unsigned char *add, size_t add_len)
Generic GCM stream start function.
Definition: gcm.c:263
AVFormatContext * ctx
Definition: record_ffmpeg.c:247
static const unsigned char iv[]
Definition: ccm.c:364
GLint GLint GLint GLint GLint GLint y
Definition: glext.h:6295
int mbedtls_gcm_update(mbedtls_gcm_context *ctx, size_t length, const unsigned char *input, unsigned char *output)
Generic GCM update function. Encrypts/decrypts using the given GCM context. Expects input to be a mul...
Definition: gcm.c:346
未知的编译器 设备已从端口上断开 文件已存在。保存到备份缓冲区 连接来自:「 公开地址 Setting disk in tray 你已离开游戏 This core does not support inter architecture netplay between these systems 输入联机游戏服务器的密码: s 已断开连接 联机游戏已断开 玩家数量已满 联机游戏对方「 s」暂停 Give hardware rendered cores their own private context Avoids having to assume hardware state changes inbetween frames 调整菜单屏幕相关的设置。 以延迟和视频撕裂为代价换取高性能。 n 当且仅当能达到全速模拟时使用。 自动检测 容量 连接到端口 对不起,未实现:核心未请求内容,无法加入联机游戏。 密码 用户名 账户列表终端 成就列表 添加游戏内容 导入游戏内容 询问 块帧 音频驱动 启用音频 涡轮 盲区 音频最大采样间隔 音频输出码率(Hz) 音频重采样驱动 启用音频同步 游戏存档自动保存间隔 自动加载自定义键位文件 返回 信息 向下滚动 开始 切换菜单 确认 退出 默认值 切换菜单 启用蓝牙服务 缓存文件夹 相机驱动 应用金手指修改 金手指文件 加载金手指文件(追加) 金手指列表 专家模式 成就奖章 锁定 非官方成就测试 未锁定 详细模式 关闭 加载配置 退出时保存配置 收藏 游戏内容文件夹 允许移除记录 下载文件夹 金手指 显示核心名称 作者 核心标签 固件 许可 系统制造商 键位设置 核心选项 自动启动一个核心 构建机器人核心URL 更新程序 指针文件夹 自定义比率 选择数据库 选择文件并选择核心< 默认 > 没有找到文件夹。 Disk Cycle Tray Status 光盘索引 自动 下载核心…… 启用DPI覆盖 驱动 加载前检查固件完整性 动态壁纸文件夹 菜单项悬停颜色 否 收藏夹 限制最大运行速度 帧率限制 自动加载游戏内容特定的核心选项 游戏选项文件 音频 视频故障排除 基本菜单控制 加载游戏内容 什么是「核心」? 历史 图像 信息 所有用户都能控制菜单 左摇杆Y 右摇杆X 右摇杆Y Gun Trigger Gun Aux A Gun Aux C Gun Select Gun D pad Down Gun D pad Right 摇杆灵敏度 绑定全部 绑定超时时间 显示输入描述标签 设备类型 Turbo占空比 键盘控制器映射启用 下十字键 左十字键 右十字键 开始键 s 键 Mouse Mouse Wheel Up Wheel Left 键盘控制器映射类型 游戏控制器菜单切出组合键 金手指索引 光驱出仓切换 上一张光盘 快进保持 帧提前量 鼠标捕获开关 即时读档 视频录制开关 联机游戏切换 游戏 围观 模式 下一个图层 退出 RetroArch 回溯 屏幕截图 上一个渲染器 慢动作切换 存档槽 音量 显示图层 在图层上显示控制器 轮询类型行为 稍晚 优先前置触摸 启用绑定自定义键位 输入 启用触摸 连发按键频率 延迟 输入设备自动配置文件夹 Lakka 服务 繁体中文 英语 法语 意大利语 韩语 葡萄牙语 俄语 越南语 左侧摇杆 核心信息文件夹 线性 加载最近的游戏内容 即时读档 定位驱动 完整日志记录 数据库设置 蓝色 深蓝色 NV SHIELD 黄色 顶部不透明度 限制菜单帧率 菜单线性过滤 菜单 壁纸不透明度 多媒体 过滤未知扩展名 最近 允许从属模式客户端 输入延迟帧 在线游戏延迟帧数 启用在线游戏 作为游戏主机 服务器地址 启用在线游戏客户端 服务器密码 只允许从属模式客户端 在线游戏设置 最大 数字输入分配 Grapple 无 在线游戏旁观者模式 服务器观战的密码 在线游戏 TCP UDP 端口 网络命令 网络信息 网络远端基本端口 否 N A 没有核心 没有可用的核心信息。 没有可显示的条目。 没有可用的信息。 未发现联机游戏主机。 没有性能计数器。 没有可用的游戏列表项目。 没有渲染器参数。 开 在线更新器 屏幕图层 屏幕提示 以文件夹形式打开压缩包 OSK 图层文件夹 自动加载最佳的图层 图层不透明度 图层缩放比例 使用 PAL60 模式 当菜单激活时暂停 性能计数器 游戏列表文件夹 触摸支持 现在 MIDI 设置 支持摇杆输入 CERO 分级 CRC32 开发者 Edge 杂志评分 ELSPA 分级 ESRB 分级 经销商 MD5 起源 出版方 发售年份 系列 启动游戏内容 重启 录像输出文件夹 录像配置 MIDI 驱动 输出文件 自定义键位文件 保存核心自定义键位文件 保存游戏自定义键位文件 重启 继续 键盘 带摇杆的手柄 启用回溯 游戏加载时自动应用金手指 回溯 配置文件夹 右侧摇杆 添加到收藏 运行 启用SAMBA文件共享服务 自动索引即时存档 自动保存即时存档 即时存档缩略图 保存核心独立配置 保存游戏独立配置 即时存档 扫描文件夹< 扫描当前文件夹 > 屏幕分辨率 秒 设置 应用渲染器修改 彩条效果 简易雪花效果 显示高级设置 关机 提前运行以降低延迟 排序文件夹中的游戏存档 启用SSH远程终端服务 启动远程输入设备 即时存档栏位 标准输入流命令 暂停屏保程序 系统 BIOS文件夹 支持 编译日期 Cocoa 支持 CoreText 支持 显示器度量DPI DirectSound 支持 动态链接库支持 EGL 支持 FFmpeg 支持 STB TrueType 支持 前端名称 Git版本 HLSL 支持 KMS EGL 支持 Libusb 支持 网络控制台支持 OpenAL 支持 OpenGL 支持 OpenVG 支持 图层支持 已充满电 放电中 PulseAudio 支持 BMP RetroRating 等级 RoarAudio 支持 RSound 支持 SDL2 支持 SDL1 支持 多线程支持 Video4Linux2 支持 Vulkan 支持 X11 支持 XVideo 支持 截图 缩略图 缩略图垂直排列 缩略图更新程序 截屏 显示时间日期 更改菜单中当前日期 时间显示格式。 YYYY MM DD HH
Definition: msg_hash_chs.h:1699
Generic cipher wrapper.
int mbedtls_gcm_self_test(int verbose)
Checkup routine.
Definition: gcm.c:736
void mbedtls_gcm_init(mbedtls_gcm_context *ctx)
Initialize GCM context (just makes references valid) Makes the context ready for mbedtls_gcm_setkey()...
Definition: gcm.c:85
std::string output
Definition: Config.FromFile.cpp:44
int mbedtls_gcm_crypt_and_tag(mbedtls_gcm_context *ctx, int mode, size_t length, const unsigned char *iv, size_t iv_len, const unsigned char *add, size_t add_len, const unsigned char *input, unsigned char *output, size_t tag_len, unsigned char *tag)
GCM buffer encryption/decryption using a block cipher.
Definition: gcm.c:440
Definition: cipher.h:216
static const size_t iv_len[NB_TESTS]
Definition: ccm.c:381
uint64_t len
Definition: gcm.h:47
mbedtls_cipher_context_t cipher_ctx
Definition: gcm.h:44
static const size_t tag_len[NB_TESTS]
Definition: ccm.c:384
unsigned __int64 uint64_t
Definition: stdint.h:136
GLenum GLuint GLenum GLsizei length
Definition: glext.h:6233
mbedtls_cipher_id_t
Definition: cipher.h:66
int mode
Definition: gcm.h:52