Hàm một chiều là những hàm toán học cho phép tính toán theo chiều này dễ dàng hơn so với chiều ngược lại. Ví dụ khi thả chiếc kính xuống sàn nhà, việc thả chiếc kính xuống sàn nhà rất dễ dàng nhưng việc nhặt các mảnh vỡ lắp lại thành chiếc kính thì rất khó có thể (thậm chí không thể) thực hiện được [6]. Khái niệm này tương tự đối với hàm toán học một chiều trong mã hoá.
lớn với nhau. Việc nhân hai số nguyên tố lớn với nhau có thể tiến hành rất dễ dàng, nhưng việc phân tích thành nhân tử nguyên tố và tìm ra các số nguyên tố thì khó hơn rất nhiều. Rất nhiều thuật toán mã hoá công khai dựa trên sự khó khăn trong việc phân tích nhân tử của một số lớn để khôi phục lại các số nguyên tử đã tạo thành số lớn đó.
Hệ thống mã hoá công khai dựa trên các hàm một chiều có bẫy (trapdoor one-way functions). Khi người sử dụng dùng khoá mã công khai để mã hoá thông tin, thông tin này được mã hoá bằng một hàm một chiều (tương tự như việc thả chiếc kính xuống sàn nhà). Hàm này cung cấp một trapdoor (cách để gắn các mảnh kính vỡ lại với nhau) nhưng cách duy nhất để thực hiện được trapdoor này là phải biết chính xác mật mã được sử dụng [4]. Khoá mã cá nhân đảm đương chức năng mật mã này. Khoá mã cá nhân có các thông tin về trapdoor và có các mã chương trình cần thiết của trapdoor này để mở được thông tin bị mã hoá (gắn lại các mảnh kính vỡ).
Có đầy đủ các thông tin về trapdoor và có được các hàm chính xác để thực hiện sẽ tạo ra được một khoá mã cá nhân.
Điểm mấu chốt của phần này là phương pháp mã hoá khoá công khai đảm bảo an toàn bằng các sử dụng các phương trình toán học mà dễ dàng thực hiện theo một chiều (sử dụng khoá mã công khai) và không thể thực hiện theo chiều ngược lại (sử dụng khoá mã cá nhân).