joeblack.git

commit f9a29ebf32415c1d23f7ed238a8ce5cf93e009d8

Author: Adam <git@apiote.xyz>

base64 decode before reencrypting

 encoder/joeblack.go | 10 ++++++----


diff --git a/encoder/joeblack.go b/encoder/joeblack.go
index 3ffdc470a69202677962b0aec172da3e72b732a9..c84275d6fc2c2b26d2213e78594cd478bd00eb42 100644
--- a/encoder/joeblack.go
+++ b/encoder/joeblack.go
@@ -58,27 +58,28 @@ 			fmt.Printf("while opening payload: %v\n", err)
 			os.Exit(1)
 		}
 		defer payloadFile.Close()
+		reader := base64.NewDecoder(base64.StdEncoding, payloadFile)
 
 		payload.Keys = make([][]byte, 2)
 		l := make([]byte, 1)
-		_, err = io.ReadFull(payloadFile, l)
+		_, err = io.ReadFull(reader, l)
 		if err != nil {
 			fmt.Printf("while reading key[0] length: %v\n", err)
 			os.Exit(1)
 		}
 		payload.Keys[0] = make([]byte, l[0])
-		_, err = io.ReadFull(payloadFile, payload.Keys[0])
+		_, err = io.ReadFull(reader, payload.Keys[0])
 		if err != nil {
 			fmt.Printf("while reading key[0]: %v\n", err)
 			os.Exit(1)
 		}
-		_, err = io.ReadFull(payloadFile, l)
+		_, err = io.ReadFull(reader, l)
 		if err != nil {
 			fmt.Printf("while reading key[1] length: %v\n", err)
 			os.Exit(1)
 		}
 		payload.Keys[1] = make([]byte, l[0])
-		_, err = io.ReadFull(payloadFile, payload.Keys[1])
+		_, err = io.ReadFull(reader, payload.Keys[1])
 		if err != nil {
 			fmt.Printf("while reading key[1]: %v\n", err)
 			os.Exit(1)
@@ -143,6 +144,7 @@ 		}
 		fmt.Println("")
 		fmt.Println(toWords(paperKey[:], wordlist))
 	}
+
 
 	payloadBytes := []byte{}
 	payloadBytes = append(payloadBytes, byte(len(payload.Keys[0])))