dumpkey.c
来自「IBM开发的TPM的驱动, 有少量的例子可以供参考」· C语言 代码 · 共 66 行
C
66 行
/****************************************************************************//* *//* Dump a TCPA Key *//* *//* Written by J. Kravitz *//* *//* IBM Thomas J. Watson Research Center *//* *//* Version 1.0 *//* *//* Last Revision 14 Apr 2003 *//* *//* Copyright (C) 2004 IBM *//* *//****************************************************************************/#include <stdio.h>#include <sys/types.h>#include <sys/stat.h>#include <unistd.h>#include <netinet/in.h>#include "tpmfunc.h"int main(int argc, char *argv[]){ int ret; struct stat sbuf; unsigned char keyblob[4096]; unsigned int keyblen; FILE *kinfile; keydata k; if (argc < 2) { fprintf(stderr, "Usage: dumpkey <key file name>\n"); exit(1); } /* ** read the Key File */ kinfile = fopen(argv[1], "r"); if (kinfile == NULL) { fprintf(stderr, "Unable to open key file\n"); exit(3); } stat(argv[1], &sbuf); keyblen = (int) sbuf.st_size; ret = fread(keyblob, 1, keyblen, kinfile); if (ret != keyblen) { fprintf(stderr, "Unable to read key file\n"); exit(4); } fclose(kinfile); TSS_KeyExtract(keyblob, &k); printf("Version: %02x%02x%02x%02x\n", k.version[0], k.version[1], k.version[2], k.version[3]); printf("KeyUsage: %02x\n", k.keyusage); printf("KeyFlags: %04x\n", k.keyflags); printf("AuthDataUsage: %02x\n", k.authdatausage); printf("Pub Algorithm: %04x\n", k.pub.algorithm); printf("Pub EncScheme: %02x\n", k.pub.encscheme); printf("Pub SigScheme: %02x\n", k.pub.sigscheme); printf("Pub KeyBitLen: %04x\n", k.pub.keybitlen); printf("Pub KeyLength: %04x\n", k.pub.keylength); printf("Pub Exp Size: %02X\n", k.pub.expsize); exit(0);}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?