Chức năng băm yếu cho các địa chỉ IPv6 đáng nhớ


10

Các địa chỉ IPv6 ở dạng 862A:7373:3386:BF1F:8D77:D3D2:220F:D7E0khó ghi nhớ hoặc thậm chí phiên âm hơn nhiều so với 4 octet của IPv4.

đã được nỗ lực để hạn chế điều này, làm cho địa chỉ IPv6 bằng cách nào đó đáng nhớ hơn.

Có một chức năng băm có chủ ý yếu có thể đảo ngược để thấy rằng cụm từ đó, nói: "Điều này tương đối lành tính và dễ phát hiện nếu cụm từ bị bẻ cong để không đáng trả tiền" sẽ băm vào địa chỉ IPv6 mục tiêu? Tất nhiên, hàm băm sẽ có nhiều đầu vào va chạm để lựa chọn và một câu có khả năng dễ nhớ hơn, chẳng hạn như cụm từ ví dụ này, có thể được cung cấp tự động.

Tôi đoán có hai phần: Đầu tiên là hàm băm yếu với phân phối tốt ở cả hai hướng. Thứ hai là một thuật toán để chọn các cụm từ dễ nhớ trong số nhiều va chạm (ngắn, bao gồm các từ từ một ngôn ngữ được chỉ định, thậm chí có thể theo một ngữ pháp đơn giản).

Mặc dù hàm băm sẽ cần phải yếu, nhưng tôi không nghi ngờ rằng nỗ lực này vẫn rất đáng kể - tuy nhiên, một khi cụm từ được biết đến, việc tính toán hàm băm đến địa chỉ đích rất nhanh.

BIÊN TẬP

Tôi tìm thấy ý tưởng liên quan này, Piphilology , để ghi nhớ một số chữ số của π:

Làm thế nào tôi muốn một thức uống, tất nhiên là có cồn, sau những bài giảng nặng nề liên quan đến cơ học lượng tử!


2
Có phải chức năng phải được xác định trên toàn bộ không gian địa chỉ, hoặc một phần của địa chỉ có thể được chọn để ghi nhớ không? Có phải sự biến đổi phải được thực hiện bởi một người tại chỗ? Có nên dự phòng nướng nó để phát hiện lỗi?
Gilles 'SO- ngừng trở nên xấu xa'

Toàn bộ không gian địa chỉ được ưa thích. Nó có thể yêu cầu một máy tính để tính toán hàm băm. Dự phòng sẽ được gọn gàng! (Nhưng các từ ngôn ngữ của con người không có lượng dư thừa khá lớn phải không?)
Jason Kleban

1
Tại sao không chỉ sử dụng tên miền? Địa chỉ IP không dành cho tiêu dùng của con người ở nơi đầu tiên và việc thêm một số trợ lý bộ nhớ cần máy tính nghe có vẻ không hấp dẫn lắm.
vonbrand

Bởi vì tên miền yêu cầu đăng ký và tra cứu. Tên miền vẫn ổn, nhưng chúng tôi vẫn sử dụng địa chỉ IPv4 cho một số thứ nhất định - tại sao vẫn không sử dụng cùng một địa chỉ nhưng cho địa chỉ IPv6?
Jason Kleban

Bạn có biết hệ thống chính ghi nhớ ? Nó ánh xạ phụ âm thành chữ số và thêm bất kỳ nguyên âm nào để tạo thành từ. Mặc dù IPv6 sẽ dịch ra khoảng 40 từ và thật khó để khiến họ kể một câu chuyện ...
Karolis Juodelė

Câu trả lời:


2

Lấy địa chỉ IP và một danh sách từ. Sau đó biến địa chỉ IP thành một danh sách các từ trong danh sách từ dựa trên các chữ số của địa chỉ, cơ sở {độ dài của danh sách từ}.

Vì vậy, ví dụ, lấy danh sách từ xúc xắc và ví dụ của bạn, tôi nhận được: 862A:7373:3386:BF1F:8D77:D3D2:220F:D7E0-> mew hades cup viii 72 grit photo pick raid dey(hoặc có thể theo cách khác, và / hoặc đệm ở đầu bên kia).

Lưu ý điều này không mất mát. Mặc dù bạn có thể tương đối dễ dàng áp dụng bất kỳ kỹ thuật mất mát nào cho việc này. Bạn chỉ có thể muốn cắt bớt địa chỉ IP hoặc chỉ chọn mỗi bit thứ hai hoặc thứ gì đó trước khi chạy nó qua ánh xạ này.


1
Này thật là gọn gàng!
Jason Kleban

-1

Có vẻ như bạn có hai trường hợp sử dụng:

  • Đưa ra một cụm từ, nó sẽ băm đến một địa chỉ IPv6 duy nhất
  • Cho một địa chỉ IPv6, nhiều cụm từ có thể băm vào nó (va chạm đầu vào). Hệ quả: Đưa ra một địa chỉ IPv6, nhiều cụm từ dễ nhớ mà người dùng có thể chọn.

Tôi tin rằng bạn sẽ phải cuộn giải pháp của riêng bạn ở đây. Địa chỉ IPv6 đủ dài để bạn có thể phải sử dụng một chức năng như SHA1 để có thể bao phủ không gian địa chỉ.

Để tối đa hóa số lượng cụm từ va chạm, bạn có thể thử bỏ qua các nguyên âm hoặc hàng trăm từ phổ biến nhất.


1
SHA1 sẽ hoạt động cho trường hợp sử dụng đầu tiên chứ không phải trường hợp sử dụng thứ hai (bạn không thể đảo ngược SHA1 trong bất kỳ khoảng thời gian hợp lý nào; với giá trị 128 bit, bạn không thể tìm thấy đầu vào băm cho nó với số lượng hợp lý của thời gian).
DW
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.