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. Poj-1157-LITTLE SHOP OF FLOWERS

    题意为从每行取一瓶花,每瓶花都有自己的审美价值 第 i+1 行取的花位于第 i 行的右下方 求最大审美价值 dp[i][j]:取到第 i 行,第 j 列时所获得的最大审美价值 动态转移方程:dp[i] ...

  2. Var To DataTable

    public static DataTable CopyToDataTable<T>(this IEnumerable<T> array) { var ret = new Da ...

  3. struts 标签<s:ierator>的简单使用说明

    struts 标签<s:ierator>的简单使用说明,只显示<s:ierator> 的前6条数据 <s:iterator value="lstVisitor& ...

  4. azure之MSSQL服务性能测试

    azure给我们提供非常多的服务而这些服务可以让企业轻而易举地在上构建一个健壮的服务体系.但在使用azure的相关产品服务时还是应该对相关的服务有一些简单的性能了解才能更好的让企业购买适合自己的服务产 ...

  5. C#分布式缓存二:Asp.Net中使用Couchbase

    前言 上一篇<C#分布式缓存一:Couchbase的安装与简单使用>主要讲解对Couchbase服务端的安装配置和客户端的引用调用,通过代码来完成最简单的实现调用.本次通过简单的配置,来完 ...

  6. Kali Linux系列教程之OpenVas安装

    Kali Linux系列教程之OpenVas安装 文 /玄魂 目录 Kali Linux系列教程之OpenVas安装 前言 1.  服务器层组件 2.客户层组件 安装过程 Initial setup ...

  7. 微软BI 之SSRS 系列 - 如何设置页标题重复

    开篇介绍 这个问题大家经常碰到,特意写一下如何解决这个小问题. 问题 默认情况下当报表超过一定的高度会自动分成多页. 第二页默认是看不到标题的. 解决方法 2012版本下在 Column Groups ...

  8. C++ WIN32控制台异常关闭回调函数

    /* This is an example of the SetConsoleCtrlHandler function that is used to install a control handle ...

  9. Null 与 “” 的区别

    说明:很多人有时候对于 null 和 "" 不是很清楚,结合其他人的文章,今天做下解释. String str1 = null; str引用为空 String str2 = &qu ...

  10. C语言实现二叉树-利用二叉树统计单词数目

    昨天刚参加了腾讯2015年在线模拟考: 四道大题的第一题就是单词统计程序的设计思想: 为了记住这一天,我打算今天通过代码实现一下: 我将用到的核心数据结构是二叉树: (要是想了解简单二叉树的实现,可以 ...