對文件異或(xor)解密的方法
這裏對異或做下簡單的解釋,異或是一種2進制的運算,這裏舉個簡單的例子
1^1=0
1^0=1
兩者相同則為0,不同則為1
a的二進制是01100001
b的二進制是01100010
逐位比較得到00000011,然後轉為十進制就是3,則a^b=3
下面以實驗吧的一道題目為例
下載壓縮包得到兩個txt文件,其中一個是密文,另外一個是明文,根據題目提示可以想到是文件異或
密文和明文的內容如下
所以我們對它們進行異或
python代碼如下
# -*- coding: cp936 -*-
a=open(‘密文.txt‘,‘r‘).read()
b=open(‘明文.txt‘,‘r‘).read()
xor=‘‘
for i in range(0,len(a)):
aa = ord(list(a)[i])^ord(list(b)[i])
xor += chr(aa)
print xor
我們跑一下得到:flag:nctf{xor_xor_xor_biubiubiu}
對文件異或(xor)解密的方法
相關推薦
對文件異或(xor)解密的方法
log 題目 txt文件 比較 ubi 二進制 python print Coding 這裏對異或做下簡單的解釋,異或是一種2進制的運算,這裏舉個簡單的例子 1^1=0 1^0=1 兩者相同則為0,不同則為1 a的二進制是01100001 b的二進制是01100010 逐位
【ShareCode】不錯的技術文章 -- 如何使用異或(XOR)運算找到陣列中缺失的數?
如何使用異或(XOR)運算找到陣列中缺失的數? 今天給大家分享一篇關於使用XOR(異或)運算找到陣列中缺失的數的問題。 在一次Javascript面試中,有這麼一個問題: 假設有一個由0到99(包含99)的整陣列成的長度為100的陣列。從陣列中隨機移除一個元素,得到了一個長度為99的陣列,那麼
【ShareCode】不錯的技術文章 -- 如何使用異或(XOR)運算找到數組中缺失的數?
upload 取出 排序 png 解法 share 結果 設有 技術 如何使用異或(XOR)運算找到數組中缺失的數? 今天給大家分享一篇關於使用XOR(異或)運算找到數組中缺失的數的問題。 在一次Javascript面試中,有這麽一個問題: 假設有一個由0到99(包含9
布林運算 : ^(異或運算XOR)、&(與運算AND)、|(或運算OR)、 、~(非門NOT)
在Leetcode刷Single Number這道題的時候,自己的想法就是遍歷,想了下別的簡便想法,楞是沒想出,看了下討論區的大手的,發現了使用XOR,於是想著補補門陣列了。 Given a non-empty array of integers, every ele
根文件系統移植(2)——根文件系統的兩種格式
根文件系統 鏡像 文件夾一:鏡像格式的根文件系統 (1)鏡像文件的根文件系統的主要作用是用來以後燒錄到塊設備上面的,塊設備上的內核啟動後去掛載它。 (2)鏡像形式的根文件系統是由文件夾格式的根文件系統通過特定的工具(mke2fs)制作得到的 (3)鏡像文件系統具有一定的格式,格式是內化的
根文件系統移植(1)——根文件系統介紹
根文件系統介紹一:什麽是根文件系統 (1)首先明白一點,我們的文件在硬盤上的存儲並非是連續存放的,而是零散的存放在硬盤中的某些空余扇區中的,這就導致了我們很難去查看我們存放的文件(因為人無法記住所有文件存放在哪些扇區,已經扇區的順序),這時就有了我們的文件系統,所以簡單來講,文件系統就是對一個存儲設備上
Linux 文件權限(1)
有用 修改文件 不能 增加 大小 abc use 寫的權限 天然 用戶組 在linux中的每個用戶必須屬於一個組,不能獨立於組外。在linux中每個文件有所有者、所在組、其它組的概念 - 所有者 - 所在組 - 其它組 - 改變用戶所在的組 所有者 一般為文件的創建者,
ext2文件系統學習(二)—— 目錄磁盤結構
echo free 文件格式 htm file 目錄結構 bitmap 點號 name 創建鏡像、mount等操作和上一篇一樣,測試目錄結構如下: 一些文件系統信息如下: Block size: 1024 Inodes per group: 1
delphi中的各類文件類型(轉)
控件 圖形 ont 界面 dci 存在 ati delphi7 工程文件 1.DPR: Delphi Project文件,包含了Pascal代碼。應用系統的工程文件2.PAS: Pascal文件,Pascal單元的源代碼,可以是與窗體有關的單元或是獨立的單元。3.DFM:
linux初級運維 之 文件以及文件系統規範(FHS)
linux入門文件:drwxr-xr-x. 2 root root 60 8月 5 21:12 vfio最前面的一個字符表示文件的類型。文件類型有: -:普通文件(f) d:目錄文件 b:塊設備文件(block) c:字符設備文件(
架構設計:系統存儲(28)——分布式文件系統Ceph(掛載)
all 兩個文件 原因 之前 來看 大數據 details 失敗 variable (接上文《架構設計:系統存儲(27)——分布式文件系統Ceph(安裝)》) 3. 連接到Ceph系統 3-1. 連接客戶端 完畢Ceph文件系統的創建過程後。就
liuux 文件管理命令(一)
linux文件管理命令 楚天逸 於平 linux Linux 文件管理命令(整理版 一 )1.cat: 用於八檔案串聯接後傳到基本輸出. 使用權限:所有使用者 語法格式: cat [-AbeEnstTuv] [--help] [--
Android入門之文件系統操作(二)文件操作相關指令
-h tools strong abc his art 為什麽 重命名 path (一)獲取總根 [java] view plain copy File[] fileList=File.listRoots(); //返回fileList.length為1 /
Linux 文件管理命令(二)
linux 文件 管理命令 Linux 文件管理命令(二)chgrp : 用於變更文件或目錄的所屬群組。 文件或目錄權限的掌控以擁有者及所屬群組來管理。設置方式采用群組名稱或群組識別碼皆可。 語法: chgrp [-cfhRv][--help][--vers
Python Selenium 文件上傳(二)
rip info python 拼接 type 項目 shee editor 可執行文件 今天補充一種文件上傳的方法 主要是因為工作中使用SendKeys方法不穩定,具體方法見: Python Selenium 文件上傳(一) 這種方法直接通過命令行執行腳
Python WebDriver 文件上傳(二)
html 默認 定位 com http 圖形用戶界面 網站 如果 應用 今天補充一種文件上傳的方法 主要是因為工作中使用SendKeys方法不穩定,具體方法見: Python WebDriver 文件上傳(一) 這種方法直接通過命令行執行腳本時沒有問題,可以成功上
Linux 文件基本屬性(轉)
bsp 分享 cron exec 累加 保護 類型 用戶 cin Linux系統是一種典型的多用戶系統,不同的用戶處於不同的地位,擁有不同的權限。為了保護系統的安全性,Linux系統對不同的用戶訪問同一文件(包括目錄文件)的權限做了不同的規定。 在Linux中我們可以使用l
文件的操作(一)
全部 strip() 文件的 () 讀一行 odi == class log 文件的使用: 打開——>操作——>關閉 ex1:讀和寫 1 #pycharm項目文件下,先創建文本文件my_heart_will_go_on 2 f=open(‘my_heart_w
Linux的企業-分布式文件系統mfs(moosefs)搭建與配置
分布式文件系統mfs一、MFS 特性:1. Free(GPL)2. 通用文件系統,不需要修改上層應用就可以使用3. 可以在線擴容,體系架構可伸縮性極強。4. 部署簡單。5. 高可用,可設置任意的文件冗余程度(提供比 raid1+0 更高的冗余級別,而絕對不會影響讀或寫的性能,只會加速)6. 可回收在指定時間內
文件I/O(二)
ring goto 配置命令 個性 printf 異步 div 進程組id 結構 (6)lseek lseek和標準I/O庫的fseek函數類似,可以移動當前讀寫位置(或者叫偏移量) #include <sys/types.h> #include &l