CS461 MP 1: Due Wednesday 09/17 by 11:59 pm Fall 2014
\Anyone, from the most clueless amateur to the best cryptographer, can create an algorithm
that he himself can't break."
{ Bruce Schneier
Guidelines
You must work alone for this assignment.
You may use any programming language you're comfortable with, but we are using Python.
You're free to use any API or library you like. Don't re-invent the wheel.
Your answers might or might not be the same as your classmates'.
You must submit your answers in your SVN repository; we will only grade what's there!
Overview
This assignment will give you a chance to explore symmetric encryption.
Files
In your svn directory, you'll nd a folder called \mp1". The following les will be inside:
1. sub key.txt: key for task 1.
2. sub ciphertext.txt: ciphertext for task 1.
3. aes key.hex: key for task 2.
4. aes iv.hex: initialization vector for task 2.
5. aes ciphertext.hex: ciphertext for task 2.
6. aes weak ciphertext.hex: ciphertext for task 3.
7. key length.txt: a number needed for task 4.
8. bonus ciphertext.txt: ciphertext for a bonus mission, should you choose accept it.
We've also generated some (nearly) empty les for you to submit your answers to.
Tasks
1. Substitution Cipher (30 points)
2. Decrypting AES (30 points)
3. Breaking A Weak AES Key (30 points)
4. Computing Key Space Size (10 points)
5. Bonus: Breaking A Substitution Cipher (20 bonus points)
1
CS461 MP 1: Due Wednesday 09/17 by 11:59 pm Fall 2014
1 Substitution Cipher
sub key.txt contains a permutation of the 26 upper-case letters that represents the key for
a substitution cipher. Using this key, the ith letter in the alphabet in the plaintext has been
replaced by the ith letter in sub key.txt to produce ciphertext in sub ciphertext.txt. For
example, if the rst three letters in your sub key.txt are ZDF..., then all As in the plaintext have
become Zs in the ciphertext, all Bs have become Ds, and all Cs have become Fs. The plaintext
we encrypted is a clue from the gameshow Jeopardy, and has only upper-case letters, numbers
and spaces. Numbers and spaces in the plaintext were not encrypted. They appear exactly as
they did in the plaintext.
Use sub key.txt to decrypt sub ciphertext.txt to obtain the plaintext and submit
it in sub plaintext.txt.
2 Decrypting AES
aes key.hex contains a 256-bit AES key represented as a series of hexadecimal values. aes iv.hex
contains a 128-bit Initialization Vector in a similar representation. We encrypted a Jeopardy
clue using AES in CBC mode with this key and IV and wrote the resulting ciphertext (also
stored in hexadecimal) in aes ciphertext.hex.
Decrypt the ciphertext and submit the plaintext in aes plaintext.txt.
3 Breaking A Weak AES Key
As with the last task, we encrypted a Jeopardy clue using 256-bit AES in CBC and stored the
result in hexadecimal in the le aes weak ciphertext.hex. For this task, though, we haven't
supplied the key. All we'll tell you about the key is that it is 256 bits long and its 251 most
signicant (leftmost) bits are all 0's. The initialization vector was set to all 0s.
Find the plaintext and submit it in aes weak plaintext.txt.
4 Computing Key Space Size
Imagine a cipher you're working with takes a key with an unusual length. In key length.txt
you'll nd a single decimal (base 10) number representing how many bits the key has.
Calculate the total number of possible keys for this cipher (i.e. the size of the
key space), and submit your answer in key space size.txt as a single decimal num-
ber.
5 Bonus: Breaking A Substitution Cipher
For 20 bonus points, let's see if you can solve task 1 without the key. You can nd the cipher
text in bonus ciphertext.txt. The plaintext is guaranteed to consist of uppercase words in
English and spaces. As in task 1, spaces were not encrypted.
Submit the plaintext in bonus plaintext.txt.
2
CS461 MP 1: Due Wednesday 09/17 by 11:59 pm Fall 2014
Final Checklist
Make sure you have submitted these les:
sub plaintext.txt
aes plaintext.txt
aes weak plaintext.txt
key space size.txt
(optional) bonus plaintext.txt
3

解密程序代写,订制服务qq:928900200的更多相关文章

  1. 基于JAVA WEB技术旅游服务网站系统设计与实现网上程序代写

    基于JAVA WEB技术旅游服务网站系统设计与实现网上程序代写 专业程序代写服务(QQ:928900200) 随着社会的进步.服务行业的服务水平不断发展与提高,宾馆.酒店.旅游等服务行业的信息量和工作 ...

  2. C++程序代写实现HashSet class

    C++程序代写实现HashSet class 专业程序代写(QQ:928900200) Implement a HashSet class for elements of type string.It ...

  3. CS代码代写, 程序代写, java代写, python代写, c/c++代写,csdaixie,daixie,作业代写,代写

    互联网一线工程师程序代写 微信联系 当天完成特色: 互联网一线工程师 24-48小时完成.用心代写/辅导/帮助客户CS作业. 客户反馈与评价 服务质量:保证honor code,代码原创.参考课程sl ...

  4. 如何鉴别程序抄袭c语言程序代写

    如何鉴别程序抄袭:如何鉴别一份程序代码是抄袭另一份程序.输入:两个C语言源程序文件 输出:抄袭了多少?给出最相似的片段,判断是谁抄袭了谁? 提示:首先进行统一规范化排版,去掉无谓的空格.空行,然后比对 ...

  5. c编写程序完成m名旅客和n辆汽车的同步程序代写

    jurassic公园有一个恐龙博物馆和一个公园,有m名旅客和n辆汽车,每辆汽车仅能允许承载一名旅客.旅客在博物馆参观一阵,然后排队乘坐旅行车.当一辆车可用时,他载入一名旅客,再绕花园行驶任意长的时间. ...

  6. 实验教学管理系统 c语言程序代写源码下载

    问题描述:实验室基本业务活动包括:实验室.班级信息录入.查询与删除:实验室预定等.试设计一个实验教学管理系统,将上述业务活动借助计算机系统完成. 基本要求: 1.必须存储的信息 (1)实验室信息:编号 ...

  7. 模拟游客一天的生活与旅游java程序代写源码

    在某个城市的商业区里,有一家首饰店,一家饭店,一家面馆,一家火锅店,一家银行,一家当铺 现在有一群来自四川的游客,一群陕西的游客,一群上海的游客,和以上各店家的工作人员在此区域里,请模拟他们一天的生活 ...

  8. 程序代写, CS代写, 代码代写, CS编程代写, java代写, python代写, c++/c代写, R代写, 算法代写, web代写

    互联网一线工程师程序代写 微信联系 当天完成 查看大牛简介特色: 学霸代写,按时交付,保证原创,7*24在线服务,可加急.用心代写/辅导/帮助客户CS作业. 客户反馈与评价 服务质量:保证honor ...

  9. C++代写,代写C++,C++程序代写,C++ assignment代写

    C++代写,代写C++,C++程序代写 关于C++代写,我们的涉猎范围: C++数据结构.算法题目 C++操作系统os题目 C++网络编程networking题目 C++ Linux题目 C++ Wi ...

随机推荐

  1. [转]框架模式 MVC 在Android中的使用

    算来学习Android开发已有2年的历史了,在这2年的学习当中,基本掌握了Android的基础知识.越到后面的学习越感觉困难,一来是自认为android没啥可学的了(自认为的,其实还有很多知识科学), ...

  2. GROUP BY,WHERE,HAVING之间的区别和用法

      GROUP BY,WHERE,HAVING之间的区别和用法 分类: Oracle学习2009-11-01 23:40 21963人阅读 评论(6) 收藏 举报 mathmanagersql数据库m ...

  3. python文件选择:tkFileDialog 基础

    tkFileDialog有两种形式: 一个是.askopenfilename(option=value, ...) 这个是"打开"对话框 另一个是:asksaveasfilenam ...

  4. div+css实现各种形状(精心整理)

    1.正方形.div {width: 100px;height: 100px;background: red;} 2.矩形.div {width: 200px;height: 100px;backgro ...

  5. Zynga 开源其服务器性能监控分析工具 zPerfmon

    流年不利的社交游戏服务商Zynga近日在官方博客宣布开源zPerfmon——该工具负责监控Zynga数以千计的社交游戏服务器.zPerfmon的源代码目前已经上传至Github. 包括Facebook ...

  6. [openwrt 项目开发笔记]: 传送门

    “Openwrt 项目开发笔记”系列传送门: [Openwrt 项目开发笔记]:Openwrt平台搭建(一) (2014-07-11 00:11) [Openwrt 项目开发笔记]:Openwrt平台 ...

  7. 简洁清新的box样式

    小菜今天偶然打开了腾讯公益,本来是冲着公益活动去的,没想到腾讯公益界面做的还不错,索性把它的box样式剽窃了下来. 个人觉得腾讯的东西普遍比较精致,就拿页面来说,每一个细节都把握的很到位,例如取色,看 ...

  8. SQL order by的用法

    首先,order by是用来写在where之后,给多个字段来排序的一个DQL查询语句. 其次,order by写法: 1.  select 字段列表/* from 表名 where 条件 order ...

  9. ASP.net知识点

    2 .列举ASP.NET 页面之间传递值的几种方式. 答: (1)QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中. 如果是传递一个或多个安全性要求不高或是结构简 ...

  10. Atitit.实现继承的原理and方法java javascript .net c# php ...

    Atitit.实现继承的原理and方法java javascript .net c# php ... 1. 实现继承的问题 1 2. 如何拷贝基类方法?采用prototype原型方式,通过冒充对象 1 ...