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. Java里的构造函数(构造方法)

    构造函数 ,是一种特殊的方法.主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中.特别的一个类可以有多个构造函数 ,可根据其参数个数的不同或参数类型 ...

  2. H3C ipsec ike 协商配置

    1. 分几步设置 (1)定义ACL (2)创建 ipsec 安全建议 1.选择认证方式 ah 选择 ah头认证方式 不配置 ipsec不能建立成功 (3)创建IKE keychain 可以写多条key ...

  3. CF - 405B - Domino Effect

    my english is poor 给你一列全部站立的骨牌,同时向左或向右推其中的几个 保证推得方式为: ...左,右,左,右,左... 即不存在两个相邻的又往相同方向推倒的 刚开始是从左往右一个一 ...

  4. 【Windows 10 IoT - 3】Windows 10 RTM安装及新特性(树莓派 Pi2)

    在<[Window 10 IoT - 1]Window 10系统安装(树莓派 Pi2)>中,我们介绍了Windows 10 IoT预览版的安装,正式版Windows 10 IOT(OS版本 ...

  5. WP8.1:关于屏幕尺寸和分辨率的那些事儿

    目前市面上的Windows Phone设备越来越多,尺寸和分辨率也越来越多,特别是WP8.1时代的到来.做过wp开发的人都知道应用适配其实较安卓要简单太多了,其中有一个重要原因,就是微软号称所有WP设 ...

  6. 用c#开发微信 (6) 微渠道 - 推广渠道管理系统 1 基础架构搭建

    我们可以使用微信的“生成带参数二维码接口”和 “用户管理接口”,来实现生成能标识不同推广渠道的二维码,记录分配给不同推广渠道二维码被扫描的信息.这样就可以统计和分析不同推广渠道的推广效果. 本系统使用 ...

  7. 【Leetcode】【Hard】Merge Intervals

    Given a collection of intervals, merge all overlapping intervals. For example,Given [1,3],[2,6],[8,1 ...

  8. Vue.js双向绑定的实现原理和模板引擎实现原理(##########################################)

    Vue.js双向绑定的实现原理 解析 神奇的 Object.defineProperty 这个方法了不起啊..vue.js和avalon.js 都是通过它实现双向绑定的..而且Object.obser ...

  9. 记一次https访问握手失败(handshake failure)

    文章作者:luxianghao 文章来源:http://www.cnblogs.com/luxianghao/p/6239518.html  转载请注明,谢谢合作. 免责声明:文章内容仅代表个人观点, ...

  10. paip.mysql fulltext 全文搜索.最佳实践.

    paip.mysql fulltext 全文搜索.最佳实践.  作者Attilax  艾龙,  EMAIL:1466519819@qq.com  来源:attilax的专栏 地址:http://blo ...