#include #include #include //free
#define maxbinsize 200*1024
int main(int argc,char **ar**)
; if(argc==1)
else if(argc==2)
fp1 = fopen("stm32f412re/stm32f412rebootloader.hex", "r");
fp3 = fopen(name, "w");
ch = fgetc(fp1);
while(ch!=eof)
fclose(fp1);
fseek (fp3 , -13 , seek_end);//從尾部往左邊走13 正好丟棄最後1行
ch = fgetc(fp2);
while(ch!=eof)
fclose(fp2);
fclose(fp3);
free(fp1);
free(fp2);
free(fp3);
printf("******gkoson finished*******");
#if 0
//檔案重新命名 mv或者cp 把前面的bin mv到外面去
//lsize = strlen(name);
name[lsize-1]='n';
name[lsize-2]='i';
name[lsize-3]='b';
printf("******rename bin %d*******",rename0isok);
//scanf("%d\n",&ch);//人為堵塞一下
#else/*
lsize = strlen(name);
name[lsize-1]='n';
name[lsize-2]='i';
name[lsize-3]='b';printf("binname %s\r\n",name);
fp2 = fopen(name, "wb");
ch = fgetc(fp1);
while(ch!=eof)
fclose(fp1);
fclose(fp2);
free(fp1);
free(fp2);
printf("******bin success*******");//不知道why 加了b還是不行
*/ lsize = strlen(name);
name[lsize-1]='n';
name[lsize-2]='i';
name[lsize-3]='b';
printf("binname %s\r\n",name);
fseek(fp1,0,seek_end);//游標到尾巴
lsize = ftell(fp1);//游標的位置就是長度了
printf("bin len =%d \n",lsize);
fclose(fp1);
fp2 = fopen(name, "wb");//之前錯誤 是這裡沒有b 導致每個不是正好4096
memset(buffer,0,maxbinsize);
fread (buffer, sizeof(char), lsize, fp1);//開始加密
for(int i=0;ibuffer[i] ^= 0xab;
fwrite(buffer, sizeof(char), lsize, fp2);
fclose(fp1);
fclose(fp2);
free(fp1);
free(fp2);
printf("******bin success*******");
#endif
return 1;
}
OTA加密最後的指令碼 還是全部吧
include include include free define maxbinsize 200 1024 int main int argc,char ar unsigned char loop 17 16 不行 err unsigned char loop 16 if argc 1 else...
資源加密和指令碼加密
指令碼加密主要是用cocos2dx自帶的加密方法,把js指令碼轉換成jsc二進位制檔案。主要是利用cocos jscompile命令進行轉換可以輸入cocos jscompile h檢視一下主要功能 usage cocos jscompile h v s src dir arr d dst dir ...
shell 指令碼加密
第一種方法 gzexe 這種加密方式不是非常保險的方法,但是能夠滿足一般的加密用途,可以隱蔽指令碼中的密碼等資訊。它是使用系統自帶的gzexe程式,它不但加密,同時壓縮檔案。使用方法 gzexe file.sh 它會把原來沒有加密的檔案備份為 file.sh 同時 file.sh 即被變成加密檔案 ...