summaryrefslogtreecommitdiff
path: root/src/solvers/XorDecrypt.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/solvers/XorDecrypt.scala')
-rw-r--r--src/solvers/XorDecrypt.scala4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/solvers/XorDecrypt.scala b/src/solvers/XorDecrypt.scala
index 83fa923..1a28637 100644
--- a/src/solvers/XorDecrypt.scala
+++ b/src/solvers/XorDecrypt.scala
@@ -30,7 +30,7 @@ object XorDecrypt {
}
def normalizedHammingDistanceForKeySize(xs: Seq[Byte], keySize: Int) = {
- val grouped = xs.grouped(keySize).toArray.dropRight(1)
+ val grouped = xs.grouped(keySize).toArray.init
// ez hack to drop non-`keySize` subcomponents of xs
(grouped.init zip grouped.tail).map(tup(hammingDistance(_, _))).reduce(_ + _) / (grouped.length - 1.0) / keySize
}
@@ -64,7 +64,7 @@ object XorDecrypt {
def findBestMultiByteKeyOfSize(keySize: Int)(ciphertext: Seq[Byte], inspectSet: Seq[Int] = Seq()): Seq[Byte] = {
// inspectSet is the set of key bytes for which we want debugging information
- ciphertext.grouped(keySize).toSeq.dropRight(1).transpose.zipWithIndex
+ ciphertext.grouped(keySize).toSeq.init.transpose.zipWithIndex
.map { case (byteCiphertext, idx) => {
if (inspectSet.contains(idx)) {
println("For idx = " + idx)