Blown to Bits
For thousands of years, people have been saying that the world is changing and will never again be the same. Yet the profound changes happening today are different, because they result from a specific technological development. It is now possible, in principle, to remember everything that anyone says, writes, sings, draws, or photographs. Everythi...
Platform Embedded Security Technology Revealed
Platform Embedded Security Technology Revealed is an in-depth introduction to Intel's platform embedded solution: the security and management engine. The engine is shipped inside most Intel platforms for servers, personal computers, tablets, and smartphones. The engine realizes advanced security and management functionalities and protects applicati...
Error-Correction Coding and Decoding
This book discusses both the theory and practical applications of self-correcting data, commonly known as error-correcting codes. The applications included demonstrate the importance of these codes in a wide range of everyday technologies, from smartphones to secure communications and transactions. Written in a readily understandable style, the boo...
Digital Video Concepts, Methods, and Metrics
Digital Video Concepts, Methods, and Metrics: Quality, Compression, Performance, and Power Trade-off Analysis is a concise reference for professionals in a wide range of applications and vocations. It focuses on giving the reader mastery over the concepts, methods and metrics of digital video coding, so that readers have sufficient understanding to...
802.11ac: A Survival Guide
The next frontier for wireless LANs is 802.11ac, a standard that increases throughput beyond one gigabit per second. This concise guide provides in-depth information to help you plan for 802.11ac, with technical details on design, network operations, deployment, and monitoring. Author Matthew Gast - an industry expert who led the development of ...
Signal Computing
In this book, you will learn how digital signals are captured, represented, processed, communicated, and stored in computers. The specific topics we will cover include: physical properties of the source information (such as sound or images), devices for information capture (microphones, cameras), digitization, compression, digital signal representa...
An Introduction to Computer Networks
An Introduction to Computer Networks, a free and open general-purpose computer-networking free book, complete with diagrams and exercises. It covers the LAN, internetworking and transport layers, focusing primarily on TCP/IP. Particular attention is paid to congestion; other special topics include queuing, real-time traffic, network management, sec...
Introduction to Logic Circuits & Logic Design with Verilog
This book for courses in Digital Systems Design introduces students to the fundamental hardware used in modern computers. Coverage includes both the classical approach to digital system design (i.e., pen and paper) in addition to the modern hardware description language (HDL) design approach (computer-based). Using this textbook enables readers to ...
Introduction to Logic Circuits & Logic Design with Verilog
This book for courses in Digital Systems Design introduces students to the fundamental hardware used in modern computers. Coverage includes both the classical approach to digital system design (i.e., pen and paper) in addition to the modern hardware description language (HDL) design approach (computer-based). Using this textbook enables readers to ...
Introduction to Digital Systems Design
This book has been designed for a first course on digital design for engineering and computer science students. It offers an extensive introduction on fundamental theories, from Boolean algebra and binary arithmetic to sequential networks and finite state machines, together with the essential tools to design and simulate systems composed of a contr...
Quick Start Guide to Verilog
This book provides a starter's guide to Verilog, to be used in conjunction with a one-semester course in Digital Systems Design, or on its own for readers who only need an introduction to the language. This book is designed to match the way the material is actually taught in the classroom. Topics are presented in a manner which builds foundational ...
Introduction to Logic Circuits & Logic Design with VHDL
This textbook introduces readers to the fundamental hardware used in modern computers. The only pre-requisite is algebra, so it can be taken by college freshman or sophomore students or even used in Advanced Placement courses in high school. This book presents both the classical approach to digital system design (i.e., pen and paper) in addition ...
Crypto 101
Crypto 101 is an introductory course on cryptography, freely available for programmers of all ages and skill levels. Learn how to exploit common cryptographic flaws, armed with nothing but a little time and your favorite programming language. Forge administrator cookies, recover passwords, and even backdoor your own random number generator....
A Graduate Course in Applied Cryptography
Cryptography is an indispensable tool used to protect information in computing systems. It is used everywhere and by billions of people worldwide on a daily basis. It is used to protect data at rest and data in motion. Cryptographic systems are an integral part of standard protocols, most notably the Transport Layer Security (TLS) protocol, making ...
PC Assembly Language
This book has extensive coverage of interfacing assembly and C code and so might be of interest to C programmers who want to learn about how C works under the hood. All the examples use the free NASM (Netwide) assembler. The tutorial only covers programming under 32-bit protected mode and requires a 32-bit protected mode compiler. It is possible to...
The little book about OS development
The OS kernel and this book were produced as part of an advanced individual course at the Royal Institute of Technology, Stockholm. The authors had previously taken courses in OS theory, but had only minor practical experience with OS kernel development. In order to get more insight and a deeper understanding of how the theory from the previous OS ...
SAT/SMT by Example
SAT/SMT solvers can be viewed as solvers of huge systems of equations. The difference is that SMT solvers takes systems in arbitrary format, while SAT solvers are limited to boolean equations in CNF 1 form. A lot of real world problems can be represented as problems of solving system of equations....
Networking with the Micro:bit
This book presents a series of activities to teach the basics of computer networks. While you will not learn all aspects of computer networking, we hope that it will serve as a good starting point. To network micro:bits, we use custom micro:bit radio to radio communication. When one hears the word radio, what comes to mind is the radio that blas...
The Kademlia Protocol Succinctly
With its novel XOR-based metric topology, Kademlia is the first peer-to-peer system to combine provable consistency and performance, latency-minimizing routing, and a symmetric, unidirectional topology. In The Kademlia Protocol Succinctly, author Marc Clifton leads readers through the positive aspects of Kademlia's decentralized specifications. He ...
Application Security in .NET Succinctly
Security in software development should be a first-order requirement, but it's often implemented in projects as an afterthought. With Application Security in .NET Succinctly, author Stan Drapkin provides a refresher of .NET security practices and fills common knowledge gaps for experienced developers and novices alike. Learn about hashes, machine a...
Optimizing software in C++
This is an optimization manual for advanced C++ programmers. This book are not for beginners. Topics include: - The choice of platform and operating system. - Choice of compiler and framework. - Finding performance bottlenecks. - The efficiency of different C++ constructs. - Multi-core systems. - Parallelization with vector operations. - CPU dispa...