Ở mức độ nào, nếu có, mã tùy chỉnh có thể được nhúng trong PNG, GIF hoặc JPG không?


7

Các tệp đồ họa máy tính có trong Windows được hiển thị bởi các thành phần như Giao diện thiết bị đồ họaDirect2D .

Có thể tạo một tệp đồ họa, ngoài việc hiển thị một đồ họa còn sử dụng mã tùy chỉnh bên trong tệp đồ họa?

Với mã tùy chỉnh tôi đang đề cập đến chức năng như:

  1. Tăng một bộ đếm hoặc ngày được hiển thị trên đồ họa.
  2. Truy cập URL web để truy xuất dữ liệu được hiển thị trên đồ họa.

1
Một cái gì đó hơi không liên quan, những gì về hình ảnh là mã? Nhìn vào piet esolang cho phép bạn lập trình với hình ảnh. Và video này trong đó một hình ảnh được tạo ra và sau đó được xây dựng dưới dạng thực thi.
Xà phòng

Bên cạnh các lỗ hổng trong bộ giải mã hình ảnh (ví dụ GDI +), có thể nhúng mã, ví dụ SAU điểm đánh dấu EOF trên JPEG. Trong trường hợp này, mã tùy chỉnh nằm trong cùng một tệp hình ảnh nhưng về mặt kỹ thuật không phải là một phần của hình ảnh. Xem ví dụ trong tài liệu này lại: phần mềm độc hại "hammertoss": www2.fireeye.com/rs/848-DID-242/images/rpt-apt29-hammertoss.pdf
user100487

Câu trả lời:


7

Các định dạng đồ họa phổ biến như JPEG, PNG và GIF không được thiết kế để có bất kỳ dạng mã nào bên trong chúng. Họ chỉ lưu trữ một mảng pixel nén, họ không thể tạo bất cứ thứ gì theo lệnh hoặc liên hệ với dịch vụ web, v.v.

(Đôi khi có các lỗ hổng được phát hiện trong bộ giải mã hình ảnh, điều đó sẽ cho phép hình ảnh được xây dựng độc hại gây ra việc thực thi mã khi xem, thông qua khai thác tràn bộ đệm hoặc tương tự. Nhưng tất nhiên đây không phải là một phần của thiết kế định dạng.)

Một số định dạng đồ họa vector như EPS và SVG thực sự cho phép nhúng mã. Tuy nhiên, là định dạng vector thay vì bitmap, các định dạng này thường không được người xem hình ảnh thông thường hỗ trợ (mặc dù SVG được trình duyệt hỗ trợ) và không thể chỉnh sửa trong các chương trình vẽ thông thường. Một người cần các chương trình đồ họa vector chuyên dụng để làm việc với chúng.

Để tạo hình ảnh cập nhật dữ liệu mới, bạn có thể tạo một dịch vụ web để tạo lại hình ảnh trên máy chủ mỗi khi được yêu cầu. Tuy nhiên, nếu khách hàng lưu trữ hình ảnh kết quả thay vì yêu cầu lại mỗi lần nó được xem, họ sẽ thấy dữ liệu cũ.


0

Tôi không biết liệu bạn có coi đây là một câu trả lời cho câu trả lời cho câu hỏi của bạn hay không vì tôi hơi không chắc nó được diễn giải như thế nào. Điều đó đang được xem xét, mã vạch 2d có thể là đồ họa lưu trữ mã và tương tác với các yếu tố dữ liệu biến đổi được xác định trong các ký hiệu như PDF417, DataMatrix, v.v.


Tôi tin rằng câu hỏi đang tìm cách nhúng mã vào tệp hình ảnh, thay vì trong chính hình ảnh. Nếu bạn không chắc chắn câu hỏi nào đang tìm kiếm, bạn cũng có thể nhận xét về câu hỏi một khi bạn có đủ danh tiếng.
trichoplax

1
cảm ơn user1846, tôi đã tìm cách nhúng mã vào tập tin hình ảnh, như trichoplax đề cập.
coderworks
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.