Marius Iulian Mihailescu and Stefania Loredana Nita
Cryptography and Cryptanalysis in MATLAB
Creating and Programming Advanced Algorithms
1st ed.
Logo of the publisher
Marius Iulian Mihailescu
Bucharest, Romania
Stefania Loredana Nita
Bucharest, Romania
ISBN 978-1-4842-7333-3 e-ISBN 978-1-4842-7334-0
https://doi.org/10.1007/978-1-4842-7334-0
Marius Iulian Mihailescu and Stefania Loredana Nita 2021
This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed.
The use of general descriptive names, registered names, trademarks, service marks, etc. in this publication does not imply, even in the absence of a specific statement, that such names are exempt from the relevant protective laws and regulations and therefore free for general use.
The publisher, the authors and the editors are safe to assume that the advice and information in this book are believed to be true and accurate at the date of publication. Neither the publisher nor the authors or the editors give a warranty, expressed or implied, with respect to the material contained herein or for any errors or omissions that may have been made. The publisher remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
This Apress imprint is published by the registered company APress Media, LLC part of Springer Nature.
The registered company address is: 1 New York Plaza, New York, NY 10004, U.S.A.
To our families and wonderful readers. May this book be a true inspiration for everyoneand remember: If you think technology can solve your security problems, then you dont understand the problems and you dont understand technology. Bruce Schneier
Table of Contents
About the Authors
Marius Iulian Mihailescu
, PhD is an Associate Professor (Senior Lecturer) at the Spiru Haret University of Bucharest, Romania. He is also the CEO of Dapyx Solution Ltd., a company based in Bucharest, Romania that is focused on information security- and cryptography-related research projects. He is a lead guest editor for applied cryptography journals and a reviewer of multiple publications with information security and cryptography profiles. He has authored and co-authored more than 30 articles in conference proceedings, 25 articles in journals, and four books. For more than six years, he has served as a lecturer at well-known national and international universities (University of Bucharest, Titu Maiorescu University, Kadir Has University, Istanbul, Turkey). He has taught courses on programming languages (C#, Java, C++, and Haskell) and object-oriented system analysis and design with UML, graphs, databases, cryptography, and information security. He served for three years as an IT Officer at Royal Caribbean Cruises Ltd., where he dealt with IT infrastructure, data security, and satellite communications systems. He earned his PhD in 2014 with a thesis on applied cryptography over biometrics data. He holds two MSc degrees, in information security and software engineering.
Stefania Loredana Nita
, PhD is a software developer and researcher at the Institute for Computers of the Romanian Academy. She earned her PhD with a thesis on advanced cryptographic schemes using searchable encryption and homomorphic encryption. At the Institute for Computers, she focuses on research and development projects that involve searchable encryption, homomorphic encryption, cloud computing security, the Internet of Things, and big data. She has served for more than two years as an assistant lecturer at the University of Bucharest, where she teaches advanced programming techniques, simulation methods, and operating systems. She has authored and co-authored more than 25 papers for conferences and journals and has co-authored four books. She holds an MSc in software engineering and two BSc degrees in computer science and mathematics.
About the Technical Reviewer
Irfan Turk
, PhD, is a math and computer programming instructor and has worked at universities, high schools, and educational institutions for about 15 years. He concentrated on applied mathematics while earning his PhD degree. Dr. Turk finished the computer science track requirements of his MSc degree while a student at the University of Texas at Arlington. He is the author of the Python Programming: for Engineers and Scientists and MATLAB Programming: for Beginners and Professionals books. Dr. Turks research interests include, but are not limited to, numerical solutions of differential equations, scientific computing, mathematical modeling, and programming in MATLAB and Python.
Marius Iulian Mihailescu and Stefania Loredana Nita 2021
M. I. Mihailescu, S. L. Nita Cryptography and Cryptanalysis in MATLAB https://doi.org/10.1007/978-1-4842-7334-0_1
1. Getting Started in Cryptography and Cryptanalysis
Due to the most recent attacks, the electronic communications and transaction require to strengthen their practical security techniques related to digital signature in such way that law enforcement agencies are able to recognize and trust them.
In the last few months alone, as we were writing this book, there were countless news stories detailing attacks that compromised the private data of millions of users on the Internet or dark web. Advanced technologies such as the Internet of Things, fog computing, edge computing, smart vehicles, drones, smart houses, and many other complex software applications (desktop/web/mobile)are evolving so fast that it is a challenge to keep up with their security requirements. For example, looking at the CVE platform, we can see a total of 152,984 records (vulnerabilities) and exposed users. By examining how these vulnerabilities occurred, developers can identify efficient ways to protect users and customers against malicious hackers.
A security solution is successful when a users machine (computer or other electronic device) and the networks with which it communicates do not expose the data flowing between them. Because of the increasing speed and complexity of computing technology (e.g., quantum computers), the mission of modern cryptography (and we are not referring to quantum cryptography) is at a very challenging point in time.
Keeping knowledge secure is one of the most important aspects to consider when designing and implementing complex systems. Information falling into the wrong hands can result in huge financial losses or, in extreme cases, even loss of lives. Cryptography can be used to encode private information in such a way that nobody should be able to decode it without the necessary privileges. However, cryptography algorithms, have been broken after hackers found a flaw in their design. When enough computing power is applied (for example quantum computers) to break an encoded message or cryptography algorithm (such as RSA), it is only a matter of time until the encryption or algorithm will be broken.