Does adding complexity mean a more secure cipher? The 2019 Stack Overflow Developer Survey Results Are InEasy explanation of “IND-” security notions?Is this hand cipher any more secure than the Vigenère cipher?What does ''latency'' really mean when a block cipher is partially unrolled?RSA: how does it work and how is it more secure than symmetric systemsComplexity of attacks on affine cipherIs my protocol that uses hybrid cryptography and AES-GCM secure?What does 0…0 and 1…1 meanDoes AAD make GCM encryption more secure?What does (block cipher) decryption parallelizable mean?What does “$<!!<!!<$” mean?What does fullstop mean in this context?

Pokemon Turn Based battle (Python)

Inverse Relationship Between Precision and Recall

How to display lines in a file like ls displays files in a directory?

Why not take a picture of a closer black hole?

Why couldn't they take pictures of a closer black hole?

What is this business jet?

Kerning for subscripts of sigma?

How to support a colleague who finds meetings extremely tiring?

Is it okay to consider publishing in my first year of PhD?

Why doesn't shell automatically fix "useless use of cat"?

What is the motivation for a law requiring 2 parties to consent for recording a conversation

Keeping a retro style to sci-fi spaceships?

Why “相同意思的词” is called “同义词” instead of "同意词"?

The phrase "to the numbers born"?

How to type a long/em dash `—`

Mathematics of imaging the black hole

What to do when moving next to a bird sanctuary with a loosely-domesticated cat?

writing variables above the numbers in tikz picture

Did Scotland spend $250,000 for the slogan "Welcome to Scotland"?

How did passengers keep warm on sail ships?

How to translate "being like"?

What is the most efficient way to store a numeric range?

Did the UK government pay "millions and millions of dollars" to try to snag Julian Assange?

What could be the right powersource for 15 seconds lifespan disposable giant chainsaw?



Does adding complexity mean a more secure cipher?



The 2019 Stack Overflow Developer Survey Results Are InEasy explanation of “IND-” security notions?Is this hand cipher any more secure than the Vigenère cipher?What does ''latency'' really mean when a block cipher is partially unrolled?RSA: how does it work and how is it more secure than symmetric systemsComplexity of attacks on affine cipherIs my protocol that uses hybrid cryptography and AES-GCM secure?What does 0…0 and 1…1 meanDoes AAD make GCM encryption more secure?What does (block cipher) decryption parallelizable mean?What does “$<!!<!!<$” mean?What does fullstop mean in this context?










4












$begingroup$


I have a cryptography workshop question I'm having trouble with as follows;



Person A creates a cipher $E_k(m)$ which produces a ciphertext from message "m" using key "k". The function inside E is kept secret but the length of $E_K(m)$ is known.



Person B recommends "increasing" security of the cipher by instead doing :



$(E_k(m) oplus m) || (E_k(m) oplus 1111...11)$



Does this in fact increase security of the cipher or increase new problems.



My thinking is, depending on the function within E, xoring the output of the cipher with the plaintext message could expose the key, meaning the extra complexity is for nothing. Am I on the right track, or am I missing something?



I have tried searching for examples of similar schemes and found nothing (which probably means it's not a good scheme) but I need to justify my answer.



Any steers in the right direction would be greatly appreciated, I'm more than happy to do the research myself just unsure what specifically to look for.



Unfortunately the above context is all I have been provided for this question.










share|improve this question











$endgroup$



migrated from stackoverflow.com 10 hours ago


This question came from our site for professional and enthusiast programmers.






















    4












    $begingroup$


    I have a cryptography workshop question I'm having trouble with as follows;



    Person A creates a cipher $E_k(m)$ which produces a ciphertext from message "m" using key "k". The function inside E is kept secret but the length of $E_K(m)$ is known.



    Person B recommends "increasing" security of the cipher by instead doing :



    $(E_k(m) oplus m) || (E_k(m) oplus 1111...11)$



    Does this in fact increase security of the cipher or increase new problems.



    My thinking is, depending on the function within E, xoring the output of the cipher with the plaintext message could expose the key, meaning the extra complexity is for nothing. Am I on the right track, or am I missing something?



    I have tried searching for examples of similar schemes and found nothing (which probably means it's not a good scheme) but I need to justify my answer.



    Any steers in the right direction would be greatly appreciated, I'm more than happy to do the research myself just unsure what specifically to look for.



    Unfortunately the above context is all I have been provided for this question.










    share|improve this question











    $endgroup$



    migrated from stackoverflow.com 10 hours ago


    This question came from our site for professional and enthusiast programmers.




















      4












      4








      4





      $begingroup$


      I have a cryptography workshop question I'm having trouble with as follows;



      Person A creates a cipher $E_k(m)$ which produces a ciphertext from message "m" using key "k". The function inside E is kept secret but the length of $E_K(m)$ is known.



      Person B recommends "increasing" security of the cipher by instead doing :



      $(E_k(m) oplus m) || (E_k(m) oplus 1111...11)$



      Does this in fact increase security of the cipher or increase new problems.



      My thinking is, depending on the function within E, xoring the output of the cipher with the plaintext message could expose the key, meaning the extra complexity is for nothing. Am I on the right track, or am I missing something?



      I have tried searching for examples of similar schemes and found nothing (which probably means it's not a good scheme) but I need to justify my answer.



      Any steers in the right direction would be greatly appreciated, I'm more than happy to do the research myself just unsure what specifically to look for.



      Unfortunately the above context is all I have been provided for this question.










      share|improve this question











      $endgroup$




      I have a cryptography workshop question I'm having trouble with as follows;



      Person A creates a cipher $E_k(m)$ which produces a ciphertext from message "m" using key "k". The function inside E is kept secret but the length of $E_K(m)$ is known.



      Person B recommends "increasing" security of the cipher by instead doing :



      $(E_k(m) oplus m) || (E_k(m) oplus 1111...11)$



      Does this in fact increase security of the cipher or increase new problems.



      My thinking is, depending on the function within E, xoring the output of the cipher with the plaintext message could expose the key, meaning the extra complexity is for nothing. Am I on the right track, or am I missing something?



      I have tried searching for examples of similar schemes and found nothing (which probably means it's not a good scheme) but I need to justify my answer.



      Any steers in the right direction would be greatly appreciated, I'm more than happy to do the research myself just unsure what specifically to look for.



      Unfortunately the above context is all I have been provided for this question.







      encryption






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited 9 hours ago









      Ella Rose

      17k44483




      17k44483










      asked 10 hours ago









      melloncolliemelloncollie

      236




      236




      migrated from stackoverflow.com 10 hours ago


      This question came from our site for professional and enthusiast programmers.









      migrated from stackoverflow.com 10 hours ago


      This question came from our site for professional and enthusiast programmers.






















          3 Answers
          3






          active

          oldest

          votes


















          4












          $begingroup$


          xoring the output of the cipher with the plaintext message




          Xoring the message into the ciphertext removes the ability to decrypt the ciphertext.



          If all you have is $k, c = E_k(m) oplus m$, then you need to know $m$ in order to strip the external $m$ off of $E_k(m)$ before you can apply $m = D_k(E_k(m))$; Basically, you would need to know the message in order to "decrypt" the message, but since you already know the message, then there would be no knowledge gained from "decrypting".



          $(E_k(m)oplus m)||(E_k(m) oplus 1111...11)$



          The previous section was striked out, because there was more to the suggestion than simply xoring the message into the ciphertext.



          In fact, the complete suggestion is far, far worse then simply implying the inability to decrypt a ciphertext: Anyone can decrypt a ciphertext from this scheme without requiring the key.



          $$c = (E_k(m) oplus m) || E_k(m) oplus 1111dots 11)\c_texta = E_k(m) oplus m\c_textb = E_k(m) oplus 1111 dots 11\c' = c_textb oplus 1111dots11\m = c_texta oplus c'$$



          The value $1111dots11$ is known to all, so anyone can compute $$E_k(m) = E_k(m) oplus 1111dots11 oplus 1111dots11$$



          So $E_k(m)$ is effectively public knowledge, so again anyone can compute $$m = E_k(m) oplus m oplus E_k(m)$$



          This scheme is completely broken.




          I have tried searching for examples of similar schemes and found nothing (which probably means it's not a good scheme) but I need to justify my answer.




          See the previous section - "encryption" is an invertible process: You have to be able to undo the transformation so that you can retrieve the plaintext from any given ciphertext.



          It is completely broken, so you won't find anything similar to it (other than situations where people asked this same question and found it to be broken)




          Does this in fact increase security of the cipher or increase new problems.




          It's a lot easier to determine whether or not doing x or y will increase/decrease security once you have a clear goal of what it means to be secure. This is a context dependent notion.



          It helps to list:



          • What you have

          • What your adversary can do

          • What you want to accomplish (in very specific terms).

          If you don't know where to start, then look for the standard notions of security that cryptographers have already worked out for the context of interest (e.g. indistinguishability for ciphers)






          share|improve this answer











          $endgroup$








          • 1




            $begingroup$
            In this case we actually could decrypt the message. The problem is everybody can :-(. Because in addition to $E_k(m) oplus m$ we also get $E_k(m) oplus 111ldots 11$
            $endgroup$
            – Marc Ilunga
            9 hours ago











          • $begingroup$
            @MarcIlunga I actually failed to pay attention to the mathjax part of the question, which is different than what the text part asks! Thanks for bringing that to my attention
            $endgroup$
            – Ella Rose
            9 hours ago










          • $begingroup$
            Thank you to both of you. Greatly appreciate the help. Definitely need to work on my number theory.
            $endgroup$
            – melloncollie
            9 hours ago


















          4












          $begingroup$

          This is indeed a example of complexity not adding security and actually weakening it.



          The second encryption can be written as $c = c_1|| c_2$, where $c_1 = E_k(m) oplus m$ and $c_2 = E_k(m) oplus 111ldots11$.



          Now observe that $m' = c_1 oplus c_2 = m oplus 111ldots11$.
          And we can easily get $m$ as $m' oplus 111ldots 11$






          share|improve this answer









          $endgroup$




















            0












            $begingroup$

            Even ignoring the complete and total brokenness of the full cipher, the $(E_k(m) oplus 1111...11)$ component keeps any possible first half from adding security. Since XORing the ciphertext with all 1s is an operation independent of either the key or the message, the cipher



            $(f(x)) || (E_k(m) oplus 1111...11)$



            permits the recovery of $E_k(m)$ for any possible $f(x)$.






            share|improve this answer









            $endgroup$













              Your Answer





              StackExchange.ifUsing("editor", function ()
              return StackExchange.using("mathjaxEditing", function ()
              StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix)
              StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
              );
              );
              , "mathjax-editing");

              StackExchange.ready(function()
              var channelOptions =
              tags: "".split(" "),
              id: "281"
              ;
              initTagRenderer("".split(" "), "".split(" "), channelOptions);

              StackExchange.using("externalEditor", function()
              // Have to fire editor after snippets, if snippets enabled
              if (StackExchange.settings.snippets.snippetsEnabled)
              StackExchange.using("snippets", function()
              createEditor();
              );

              else
              createEditor();

              );

              function createEditor()
              StackExchange.prepareEditor(
              heartbeatType: 'answer',
              autoActivateHeartbeat: false,
              convertImagesToLinks: false,
              noModals: true,
              showLowRepImageUploadWarning: true,
              reputationToPostImages: null,
              bindNavPrevention: true,
              postfix: "",
              imageUploader:
              brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
              contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
              allowUrls: true
              ,
              noCode: true, onDemand: true,
              discardSelector: ".discard-answer"
              ,immediatelyShowMarkdownHelp:true
              );



              );













              draft saved

              draft discarded


















              StackExchange.ready(
              function ()
              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcrypto.stackexchange.com%2fquestions%2f68705%2fdoes-adding-complexity-mean-a-more-secure-cipher%23new-answer', 'question_page');

              );

              Post as a guest















              Required, but never shown

























              3 Answers
              3






              active

              oldest

              votes








              3 Answers
              3






              active

              oldest

              votes









              active

              oldest

              votes






              active

              oldest

              votes









              4












              $begingroup$


              xoring the output of the cipher with the plaintext message




              Xoring the message into the ciphertext removes the ability to decrypt the ciphertext.



              If all you have is $k, c = E_k(m) oplus m$, then you need to know $m$ in order to strip the external $m$ off of $E_k(m)$ before you can apply $m = D_k(E_k(m))$; Basically, you would need to know the message in order to "decrypt" the message, but since you already know the message, then there would be no knowledge gained from "decrypting".



              $(E_k(m)oplus m)||(E_k(m) oplus 1111...11)$



              The previous section was striked out, because there was more to the suggestion than simply xoring the message into the ciphertext.



              In fact, the complete suggestion is far, far worse then simply implying the inability to decrypt a ciphertext: Anyone can decrypt a ciphertext from this scheme without requiring the key.



              $$c = (E_k(m) oplus m) || E_k(m) oplus 1111dots 11)\c_texta = E_k(m) oplus m\c_textb = E_k(m) oplus 1111 dots 11\c' = c_textb oplus 1111dots11\m = c_texta oplus c'$$



              The value $1111dots11$ is known to all, so anyone can compute $$E_k(m) = E_k(m) oplus 1111dots11 oplus 1111dots11$$



              So $E_k(m)$ is effectively public knowledge, so again anyone can compute $$m = E_k(m) oplus m oplus E_k(m)$$



              This scheme is completely broken.




              I have tried searching for examples of similar schemes and found nothing (which probably means it's not a good scheme) but I need to justify my answer.




              See the previous section - "encryption" is an invertible process: You have to be able to undo the transformation so that you can retrieve the plaintext from any given ciphertext.



              It is completely broken, so you won't find anything similar to it (other than situations where people asked this same question and found it to be broken)




              Does this in fact increase security of the cipher or increase new problems.




              It's a lot easier to determine whether or not doing x or y will increase/decrease security once you have a clear goal of what it means to be secure. This is a context dependent notion.



              It helps to list:



              • What you have

              • What your adversary can do

              • What you want to accomplish (in very specific terms).

              If you don't know where to start, then look for the standard notions of security that cryptographers have already worked out for the context of interest (e.g. indistinguishability for ciphers)






              share|improve this answer











              $endgroup$








              • 1




                $begingroup$
                In this case we actually could decrypt the message. The problem is everybody can :-(. Because in addition to $E_k(m) oplus m$ we also get $E_k(m) oplus 111ldots 11$
                $endgroup$
                – Marc Ilunga
                9 hours ago











              • $begingroup$
                @MarcIlunga I actually failed to pay attention to the mathjax part of the question, which is different than what the text part asks! Thanks for bringing that to my attention
                $endgroup$
                – Ella Rose
                9 hours ago










              • $begingroup$
                Thank you to both of you. Greatly appreciate the help. Definitely need to work on my number theory.
                $endgroup$
                – melloncollie
                9 hours ago















              4












              $begingroup$


              xoring the output of the cipher with the plaintext message




              Xoring the message into the ciphertext removes the ability to decrypt the ciphertext.



              If all you have is $k, c = E_k(m) oplus m$, then you need to know $m$ in order to strip the external $m$ off of $E_k(m)$ before you can apply $m = D_k(E_k(m))$; Basically, you would need to know the message in order to "decrypt" the message, but since you already know the message, then there would be no knowledge gained from "decrypting".



              $(E_k(m)oplus m)||(E_k(m) oplus 1111...11)$



              The previous section was striked out, because there was more to the suggestion than simply xoring the message into the ciphertext.



              In fact, the complete suggestion is far, far worse then simply implying the inability to decrypt a ciphertext: Anyone can decrypt a ciphertext from this scheme without requiring the key.



              $$c = (E_k(m) oplus m) || E_k(m) oplus 1111dots 11)\c_texta = E_k(m) oplus m\c_textb = E_k(m) oplus 1111 dots 11\c' = c_textb oplus 1111dots11\m = c_texta oplus c'$$



              The value $1111dots11$ is known to all, so anyone can compute $$E_k(m) = E_k(m) oplus 1111dots11 oplus 1111dots11$$



              So $E_k(m)$ is effectively public knowledge, so again anyone can compute $$m = E_k(m) oplus m oplus E_k(m)$$



              This scheme is completely broken.




              I have tried searching for examples of similar schemes and found nothing (which probably means it's not a good scheme) but I need to justify my answer.




              See the previous section - "encryption" is an invertible process: You have to be able to undo the transformation so that you can retrieve the plaintext from any given ciphertext.



              It is completely broken, so you won't find anything similar to it (other than situations where people asked this same question and found it to be broken)




              Does this in fact increase security of the cipher or increase new problems.




              It's a lot easier to determine whether or not doing x or y will increase/decrease security once you have a clear goal of what it means to be secure. This is a context dependent notion.



              It helps to list:



              • What you have

              • What your adversary can do

              • What you want to accomplish (in very specific terms).

              If you don't know where to start, then look for the standard notions of security that cryptographers have already worked out for the context of interest (e.g. indistinguishability for ciphers)






              share|improve this answer











              $endgroup$








              • 1




                $begingroup$
                In this case we actually could decrypt the message. The problem is everybody can :-(. Because in addition to $E_k(m) oplus m$ we also get $E_k(m) oplus 111ldots 11$
                $endgroup$
                – Marc Ilunga
                9 hours ago











              • $begingroup$
                @MarcIlunga I actually failed to pay attention to the mathjax part of the question, which is different than what the text part asks! Thanks for bringing that to my attention
                $endgroup$
                – Ella Rose
                9 hours ago










              • $begingroup$
                Thank you to both of you. Greatly appreciate the help. Definitely need to work on my number theory.
                $endgroup$
                – melloncollie
                9 hours ago













              4












              4








              4





              $begingroup$


              xoring the output of the cipher with the plaintext message




              Xoring the message into the ciphertext removes the ability to decrypt the ciphertext.



              If all you have is $k, c = E_k(m) oplus m$, then you need to know $m$ in order to strip the external $m$ off of $E_k(m)$ before you can apply $m = D_k(E_k(m))$; Basically, you would need to know the message in order to "decrypt" the message, but since you already know the message, then there would be no knowledge gained from "decrypting".



              $(E_k(m)oplus m)||(E_k(m) oplus 1111...11)$



              The previous section was striked out, because there was more to the suggestion than simply xoring the message into the ciphertext.



              In fact, the complete suggestion is far, far worse then simply implying the inability to decrypt a ciphertext: Anyone can decrypt a ciphertext from this scheme without requiring the key.



              $$c = (E_k(m) oplus m) || E_k(m) oplus 1111dots 11)\c_texta = E_k(m) oplus m\c_textb = E_k(m) oplus 1111 dots 11\c' = c_textb oplus 1111dots11\m = c_texta oplus c'$$



              The value $1111dots11$ is known to all, so anyone can compute $$E_k(m) = E_k(m) oplus 1111dots11 oplus 1111dots11$$



              So $E_k(m)$ is effectively public knowledge, so again anyone can compute $$m = E_k(m) oplus m oplus E_k(m)$$



              This scheme is completely broken.




              I have tried searching for examples of similar schemes and found nothing (which probably means it's not a good scheme) but I need to justify my answer.




              See the previous section - "encryption" is an invertible process: You have to be able to undo the transformation so that you can retrieve the plaintext from any given ciphertext.



              It is completely broken, so you won't find anything similar to it (other than situations where people asked this same question and found it to be broken)




              Does this in fact increase security of the cipher or increase new problems.




              It's a lot easier to determine whether or not doing x or y will increase/decrease security once you have a clear goal of what it means to be secure. This is a context dependent notion.



              It helps to list:



              • What you have

              • What your adversary can do

              • What you want to accomplish (in very specific terms).

              If you don't know where to start, then look for the standard notions of security that cryptographers have already worked out for the context of interest (e.g. indistinguishability for ciphers)






              share|improve this answer











              $endgroup$




              xoring the output of the cipher with the plaintext message




              Xoring the message into the ciphertext removes the ability to decrypt the ciphertext.



              If all you have is $k, c = E_k(m) oplus m$, then you need to know $m$ in order to strip the external $m$ off of $E_k(m)$ before you can apply $m = D_k(E_k(m))$; Basically, you would need to know the message in order to "decrypt" the message, but since you already know the message, then there would be no knowledge gained from "decrypting".



              $(E_k(m)oplus m)||(E_k(m) oplus 1111...11)$



              The previous section was striked out, because there was more to the suggestion than simply xoring the message into the ciphertext.



              In fact, the complete suggestion is far, far worse then simply implying the inability to decrypt a ciphertext: Anyone can decrypt a ciphertext from this scheme without requiring the key.



              $$c = (E_k(m) oplus m) || E_k(m) oplus 1111dots 11)\c_texta = E_k(m) oplus m\c_textb = E_k(m) oplus 1111 dots 11\c' = c_textb oplus 1111dots11\m = c_texta oplus c'$$



              The value $1111dots11$ is known to all, so anyone can compute $$E_k(m) = E_k(m) oplus 1111dots11 oplus 1111dots11$$



              So $E_k(m)$ is effectively public knowledge, so again anyone can compute $$m = E_k(m) oplus m oplus E_k(m)$$



              This scheme is completely broken.




              I have tried searching for examples of similar schemes and found nothing (which probably means it's not a good scheme) but I need to justify my answer.




              See the previous section - "encryption" is an invertible process: You have to be able to undo the transformation so that you can retrieve the plaintext from any given ciphertext.



              It is completely broken, so you won't find anything similar to it (other than situations where people asked this same question and found it to be broken)




              Does this in fact increase security of the cipher or increase new problems.




              It's a lot easier to determine whether or not doing x or y will increase/decrease security once you have a clear goal of what it means to be secure. This is a context dependent notion.



              It helps to list:



              • What you have

              • What your adversary can do

              • What you want to accomplish (in very specific terms).

              If you don't know where to start, then look for the standard notions of security that cryptographers have already worked out for the context of interest (e.g. indistinguishability for ciphers)







              share|improve this answer














              share|improve this answer



              share|improve this answer








              edited 9 hours ago

























              answered 10 hours ago









              Ella RoseElla Rose

              17k44483




              17k44483







              • 1




                $begingroup$
                In this case we actually could decrypt the message. The problem is everybody can :-(. Because in addition to $E_k(m) oplus m$ we also get $E_k(m) oplus 111ldots 11$
                $endgroup$
                – Marc Ilunga
                9 hours ago











              • $begingroup$
                @MarcIlunga I actually failed to pay attention to the mathjax part of the question, which is different than what the text part asks! Thanks for bringing that to my attention
                $endgroup$
                – Ella Rose
                9 hours ago










              • $begingroup$
                Thank you to both of you. Greatly appreciate the help. Definitely need to work on my number theory.
                $endgroup$
                – melloncollie
                9 hours ago












              • 1




                $begingroup$
                In this case we actually could decrypt the message. The problem is everybody can :-(. Because in addition to $E_k(m) oplus m$ we also get $E_k(m) oplus 111ldots 11$
                $endgroup$
                – Marc Ilunga
                9 hours ago











              • $begingroup$
                @MarcIlunga I actually failed to pay attention to the mathjax part of the question, which is different than what the text part asks! Thanks for bringing that to my attention
                $endgroup$
                – Ella Rose
                9 hours ago










              • $begingroup$
                Thank you to both of you. Greatly appreciate the help. Definitely need to work on my number theory.
                $endgroup$
                – melloncollie
                9 hours ago







              1




              1




              $begingroup$
              In this case we actually could decrypt the message. The problem is everybody can :-(. Because in addition to $E_k(m) oplus m$ we also get $E_k(m) oplus 111ldots 11$
              $endgroup$
              – Marc Ilunga
              9 hours ago





              $begingroup$
              In this case we actually could decrypt the message. The problem is everybody can :-(. Because in addition to $E_k(m) oplus m$ we also get $E_k(m) oplus 111ldots 11$
              $endgroup$
              – Marc Ilunga
              9 hours ago













              $begingroup$
              @MarcIlunga I actually failed to pay attention to the mathjax part of the question, which is different than what the text part asks! Thanks for bringing that to my attention
              $endgroup$
              – Ella Rose
              9 hours ago




              $begingroup$
              @MarcIlunga I actually failed to pay attention to the mathjax part of the question, which is different than what the text part asks! Thanks for bringing that to my attention
              $endgroup$
              – Ella Rose
              9 hours ago












              $begingroup$
              Thank you to both of you. Greatly appreciate the help. Definitely need to work on my number theory.
              $endgroup$
              – melloncollie
              9 hours ago




              $begingroup$
              Thank you to both of you. Greatly appreciate the help. Definitely need to work on my number theory.
              $endgroup$
              – melloncollie
              9 hours ago











              4












              $begingroup$

              This is indeed a example of complexity not adding security and actually weakening it.



              The second encryption can be written as $c = c_1|| c_2$, where $c_1 = E_k(m) oplus m$ and $c_2 = E_k(m) oplus 111ldots11$.



              Now observe that $m' = c_1 oplus c_2 = m oplus 111ldots11$.
              And we can easily get $m$ as $m' oplus 111ldots 11$






              share|improve this answer









              $endgroup$

















                4












                $begingroup$

                This is indeed a example of complexity not adding security and actually weakening it.



                The second encryption can be written as $c = c_1|| c_2$, where $c_1 = E_k(m) oplus m$ and $c_2 = E_k(m) oplus 111ldots11$.



                Now observe that $m' = c_1 oplus c_2 = m oplus 111ldots11$.
                And we can easily get $m$ as $m' oplus 111ldots 11$






                share|improve this answer









                $endgroup$















                  4












                  4








                  4





                  $begingroup$

                  This is indeed a example of complexity not adding security and actually weakening it.



                  The second encryption can be written as $c = c_1|| c_2$, where $c_1 = E_k(m) oplus m$ and $c_2 = E_k(m) oplus 111ldots11$.



                  Now observe that $m' = c_1 oplus c_2 = m oplus 111ldots11$.
                  And we can easily get $m$ as $m' oplus 111ldots 11$






                  share|improve this answer









                  $endgroup$



                  This is indeed a example of complexity not adding security and actually weakening it.



                  The second encryption can be written as $c = c_1|| c_2$, where $c_1 = E_k(m) oplus m$ and $c_2 = E_k(m) oplus 111ldots11$.



                  Now observe that $m' = c_1 oplus c_2 = m oplus 111ldots11$.
                  And we can easily get $m$ as $m' oplus 111ldots 11$







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered 9 hours ago









                  Marc IlungaMarc Ilunga

                  41817




                  41817





















                      0












                      $begingroup$

                      Even ignoring the complete and total brokenness of the full cipher, the $(E_k(m) oplus 1111...11)$ component keeps any possible first half from adding security. Since XORing the ciphertext with all 1s is an operation independent of either the key or the message, the cipher



                      $(f(x)) || (E_k(m) oplus 1111...11)$



                      permits the recovery of $E_k(m)$ for any possible $f(x)$.






                      share|improve this answer









                      $endgroup$

















                        0












                        $begingroup$

                        Even ignoring the complete and total brokenness of the full cipher, the $(E_k(m) oplus 1111...11)$ component keeps any possible first half from adding security. Since XORing the ciphertext with all 1s is an operation independent of either the key or the message, the cipher



                        $(f(x)) || (E_k(m) oplus 1111...11)$



                        permits the recovery of $E_k(m)$ for any possible $f(x)$.






                        share|improve this answer









                        $endgroup$















                          0












                          0








                          0





                          $begingroup$

                          Even ignoring the complete and total brokenness of the full cipher, the $(E_k(m) oplus 1111...11)$ component keeps any possible first half from adding security. Since XORing the ciphertext with all 1s is an operation independent of either the key or the message, the cipher



                          $(f(x)) || (E_k(m) oplus 1111...11)$



                          permits the recovery of $E_k(m)$ for any possible $f(x)$.






                          share|improve this answer









                          $endgroup$



                          Even ignoring the complete and total brokenness of the full cipher, the $(E_k(m) oplus 1111...11)$ component keeps any possible first half from adding security. Since XORing the ciphertext with all 1s is an operation independent of either the key or the message, the cipher



                          $(f(x)) || (E_k(m) oplus 1111...11)$



                          permits the recovery of $E_k(m)$ for any possible $f(x)$.







                          share|improve this answer












                          share|improve this answer



                          share|improve this answer










                          answered 1 hour ago









                          MarkMark

                          1885




                          1885



























                              draft saved

                              draft discarded
















































                              Thanks for contributing an answer to Cryptography Stack Exchange!


                              • Please be sure to answer the question. Provide details and share your research!

                              But avoid


                              • Asking for help, clarification, or responding to other answers.

                              • Making statements based on opinion; back them up with references or personal experience.

                              Use MathJax to format equations. MathJax reference.


                              To learn more, see our tips on writing great answers.




                              draft saved


                              draft discarded














                              StackExchange.ready(
                              function ()
                              StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fcrypto.stackexchange.com%2fquestions%2f68705%2fdoes-adding-complexity-mean-a-more-secure-cipher%23new-answer', 'question_page');

                              );

                              Post as a guest















                              Required, but never shown





















































                              Required, but never shown














                              Required, but never shown












                              Required, but never shown







                              Required, but never shown

































                              Required, but never shown














                              Required, but never shown












                              Required, but never shown







                              Required, but never shown







                              Popular posts from this blog

                              How to create a command for the “strange m” symbol in latex? Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 23, 2019 at 23:30 UTC (7:30pm US/Eastern)How do you make your own symbol when Detexify fails?Writing bold small caps with mathpazo packageplus-minus symbol with parenthesis around the minus signGreek character in Beamer document titleHow to create dashed right arrow over symbol?Currency symbol: Turkish LiraDouble prec as a single symbol?Plus Sign Too Big; How to Call adfbullet?Is there a TeX macro for three-legged pi?How do I get my integral-like symbol to align like the integral?How to selectively substitute a letter with another symbol representing the same letterHow do I generate a less than symbol and vertical bar that are the same height?

                              Българска екзархия Съдържание История | Български екзарси | Вижте също | Външни препратки | Литература | Бележки | НавигацияУстав за управлението на българската екзархия. Цариград, 1870Слово на Ловешкия митрополит Иларион при откриването на Българския народен събор в Цариград на 23. II. 1870 г.Българската правда и гръцката кривда. От С. М. (= Софийски Мелетий). Цариград, 1872Предстоятели на Българската екзархияПодмененият ВеликденИнформационна агенция „Фокус“Димитър Ризов. Българите в техните исторически, етнографически и политически граници (Атлас съдържащ 40 карти). Berlin, Königliche Hoflithographie, Hof-Buch- und -Steindruckerei Wilhelm Greve, 1917Report of the International Commission to Inquire into the Causes and Conduct of the Balkan Wars

                              Category:Tremithousa Media in category "Tremithousa"Navigation menuUpload media34° 49′ 02.7″ N, 32° 26′ 37.32″ EOpenStreetMapGoogle EarthProximityramaReasonatorScholiaStatisticsWikiShootMe