Карта Германии 1:1 в PDF-формате? Легко!

Карта Германии 1:1 в PDF-формате? Легко!

Карта Германии 1:1 в PDF-формате? Легко!

Как оказалось, в файл PDF можно втиснуть страницу космических размеров. Лимиты, указанные в спецификациях формата, отображают возможности конкретного приложения для просмотра таких документов — Adobe Acrobat.

О том, что формат PDF не ограничивает размеры страниц таких документов, сказано, например, в соответствующей статье Википедии. Тем не менее программист Алекс Чань (Alex Chan), известная под ником alexwlchan, неоднократно сталкивалась с мнением, будто максимальный размер PDF-страниц — 381 км по стороне.

Таким листом можно накрыть половину Германии на карте масштабом 1:1, однако откуда взялось это магическое число?

 

В приложениях к спецификациям PDF 1.7 (PDF) отмечено, что лимиты на величину и количество объектов в таких файлах связаны с возможностями принтеров и соответствующих приложений. В Acrobat 5.0 и выше размеры страниц ограничены 200 х 200 дюймов; в этих границах дефолт можно для каждой менять с помощью записи UserUnit (число отображает кратность измерения на странице относительно типографского пункта, в программах Adobe равен 1/72 дюйма).

Версии Acrobat 7.0 и новее поддерживают верхнее значение UserUnit в 75 000, то есть страница PDF по каждой стороне не должна превышать 15 млн дюймов (381 км). Чтобы удостовериться, что для PDF это не предел, Чань изучила структуру таких файлов и собрала дополнительную информацию, задавая наводящие вопросы ChatGPT, а затем приступила к экспериментам, создав несколько простейших образцов вручную.

Как выяснилось, увеличить размеры страниц можно не только с помощью UserUnit, но также манипулируя значением MediaBox (размер материала, на котором производится печать). При превышении лимитов Acrobat приложение продолжало упорно показывать в метаданных 15 млн дюймов, а такой же трюк с UserUnit оно вообще не заметило (не выдало ни предупреждения, ни ошибки).

В ходе исследования было установлено, что встроенная в macOS программа Preview.app не поддерживает UserUnit и потому полностью игнорирует такие значения, считая, что во всех PDF установлен дефолт 1/72 дюйма. Верхний предел, как в случае с Acrobat, для этого приложения выставить невозможно, поэтому оно спокойно покажет в свойствах файла, что ширина страницы соизмерима с расстоянием от Земли до Луны.

 

Когда в ходе экспериментов Preview.app заявила, что PDF больше вселенной (примерно 37 млрд световых лет в квадрате), Чань решила остановиться. Распечатывать такие страницы даже не стоит пытаться.

Android разрешит переносить passkey между менеджерами паролей

Google приблизилась к тому, чтобы наконец-то разрешить пользователям Android переносить passkey между разными менеджерами паролей. Те самые ключи доступа, которые должны были заменить пароли и сделать жизнь проще, но заодно умудрились частично запереть пользователей внутри экосистем.

Сейчас passkey считаются более безопасной альтернативой обычным паролям: не надо запоминать сложные комбинации, меньше шансов попасться на фишинг, вход подтверждается устройством.

Но есть нюанс: перенести такие ключи из одного менеджера паролей в другой бывает куда сложнее, чем хотелось бы. Безопасность безопасностью, а цифровой замок на двери всё равно раздражает.

Google работает над решением этой проблемы с прошлого года. Apple уже успела внедрить перенос passkey в сторонние менеджеры в iOS 26 и macOS 26, а вот на Android функция пока официально не заработала.

Теперь стало известно, что корпорация добра уже тестирует интерфейс переноса passkey между приложениями. В Google Password Manager появились скрытые опции «Импортировать пароли и ключи доступа» и «Экспортировать пароли и ключи доступа» вместо обычных пунктов импорта и экспорта паролей.

 

 

Согласно тестам Android Authority, функцию удалось активировать и частично проверить. При импорте Google Password Manager предлагает выбрать менеджер паролей, где уже хранятся passkey. После этого пользователь переходит в выбранное приложение, например Bitwarden, и может перенести пароли, passkey и другие сохранённые данные в менеджер Google.

С экспортом всё немного хитрее: отдельной кнопки «отправить passkey в другое приложение» пока нет. Вместо этого система должна предлагать перенос, когда пользователь открывает другой поддерживаемый менеджер паролей.

Работать всё это будет через Credential Exchange Protocol — механизм обмена учётными данными между менеджерами паролей. Его поддерживают крупные игроки вроде Google, Apple и Samsung, но на старте функция может быть доступна не для всех приложений.

RSS: Новости на портале Anti-Malware.ru