メインページ | 構成 | ファイル一覧 | 構成メンバ | ファイルメンバ | 関連ページ

dkcSafeFileSystem.h

説明を見る。
00001 
00032 #ifndef DKUTIL_C_SAFE_FILESYSTEM_H
00033 #define DKUTIL_C_SAFE_FILESYSTEM_H
00034 
00035 #include "dkcCryptograph.h"
00036 #include "dkcSHA1.h"
00037 #include "dkcSJISFileSystem.h"
00038 #include "dkcBuffer.h"
00039 #include "dkcStream.h"
00040 
00041 typedef struct dkc_FileHeader_FileWithSignature{
00043     BYTE little_endian;
00045     UINT sig;
00047     ULONGLONG filesize;
00048     //データ部のサイズ指定は何故か大きい
00049     //ULONGLONG datasize;
00051     BYTE hash_value[SHA1_BIN_BUFFER_SIZE]; 
00052 
00053 }DKC_FILE_HEADER_FILE_WITH_SIGNATURE;
00054 
00055 typedef struct dkc_FileWithSignature{
00056     DKC_STREAM *mStream;
00057     DKC_SHA1 *mSHA1;
00058     DKC_BUFFER *mDustbin;
00060     BYTE mWriteMode;
00062     BYTE mAllLoad;
00064     DKC_FILE_HEADER_FILE_WITH_SIGNATURE mFileHeader;
00065     
00066 }DKC_FILE_WITH_SIGNATURE;
00067 
00068 
00085 DKC_EXTERN DKC_FILE_WITH_SIGNATURE *WINAPI dkcOpenFileWithSignature(
00086     UINT stream_flag,//size_t stream_size,
00087     const char *filename,const char *mode,
00088     const void *dustbin,size_t dustbin_size,
00089     UINT signature
00090 );
00091 
00092 
00093 DKC_EXTERN int WINAPI dkcFileWithSignatureWrite(DKC_FILE_WITH_SIGNATURE *p,
00094                                                                                                 const void *data,size_t size);
00095 
00096 DKC_EXTERN int WINAPI dkcFileWithSignatureWrite16(DKC_FILE_WITH_SIGNATURE *p,
00097                                                                                                 const void *data,size_t size);
00098 
00099 
00100 DKC_EXTERN int WINAPI dkcFileWithSignatureWrite32(DKC_FILE_WITH_SIGNATURE *p,
00101                                                                                                 const void *data,size_t size);
00102 
00103 DKC_EXTERN int WINAPI dkcFileWithSignatureWrite64(DKC_FILE_WITH_SIGNATURE *p,
00104                                                                                                 const void *data,size_t size);
00105 
00111 DKC_EXTERN int WINAPI dkcFileWithSignatureRead(DKC_FILE_WITH_SIGNATURE *p,
00112                                                                                                 void *data,size_t size,size_t *readsize);
00113 
00120 DKC_EXTERN int WINAPI dkcFileWithSignatureCheckCheat(DKC_FILE_WITH_SIGNATURE *p);
00121 
00122 DKC_EXTERN int WINAPI dkcFileWithSignatureCheckCheatFile(const char *filename);
00123 
00126 DKC_EXTERN void WINAPI dkcFileWithSignatureFinal(DKC_FILE_WITH_SIGNATURE *p);
00127                                                                                                                  
00128 
00129 DKC_EXTERN int WINAPI dkcCloseFileWithSignature(DKC_FILE_WITH_SIGNATURE **);
00130 
00131 
00132 //**********************************************************
00133 //暗号化機能付き ファイルセーブ
00134 //**********************************************************
00135 
00136 typedef struct dkc_Arcfour_File{
00138     DKC_FILE_WITH_SIGNATURE *mFile;
00140     DKC_ARCFOUR_STATE *maf;
00141 }DKC_ARCFOUR_FILE;
00142 
00149 DKC_EXTERN DKC_ARCFOUR_FILE *dkcOpenArcfourFile(
00150     UINT stream_flag,size_t stream_size,
00151     const char *filename,const char *mode,
00152     const void *dustbin,size_t dustbin_size,
00153     const void *arcfour_key,size_t arcfour_size,
00154     UINT signature,BOOL *IsCheated
00155 );
00156 
00157 DKC_EXTERN int dkcCloseArcfourFile(DKC_ARCFOUR_FILE **);
00158 
00159 
00160 DKC_EXTERN int WINAPI dkcArcfourFileWrite(DKC_ARCFOUR_FILE *p,
00161                                                                                                 const void *data,size_t size);
00162 
00163 DKC_EXTERN int WINAPI dkcArcfourFileWrite16(DKC_ARCFOUR_FILE *p,
00164                                                                                                 const void *data,size_t size);
00165 
00166 
00167 DKC_EXTERN int WINAPI dkcArcfourFileWrite32(DKC_ARCFOUR_FILE *p,
00168                                                                                                 const void *data,size_t size);
00169 
00170 DKC_EXTERN int WINAPI dkcArcfourFileWrite64(DKC_ARCFOUR_FILE *p,
00171                                                                                                 const void *data,size_t size);
00172 
00173 
00174 DKC_EXTERN int WINAPI dkcArcfourFileRead(DKC_ARCFOUR_FILE *p,
00175                                                                                                 void *data,size_t size);
00176 
00177 
00178 
00179 
00180 #endif //end of include once

dkutil_cに対してTue Oct 19 03:34:55 2004に生成されました。 doxygen 1.3.6