Вам нужно будет использовать разные системы шифрования Windows/Linux, а затем использовать общий раздел данных с veracrypt и, возможно, жиром или ntfs (насколько я знаю, для окон больше нет драйвера ext из-за принудительных подписей драйверов. NTFS - не лучший выбор для Linux, но может иметь преимущества в Windows).
Если вы хотите зашифровать Windows с помощью veracrypt, вам нужно установить его в раздел, а не в раздел загрузчика жесткого диска, и загрузить его из grub.
Другим вариантом, который может быть проще, является FDE для одной системы и помещение другой (с FDE или без) в виртуальную машину.
По сути, вы устанавливаете двухэтапный DNS-резольвер, который запрашивает два вышестоящих сервера и возвращает один результат на основе обоих ответов. Я не уверен, существует ли общий способ сделать это, но это несложно написать, если у вас есть хорошая библиотека DNS. К сожалению, большинство языков программирования в наши дни не имеют такой библиотеки (по крайней мере, на стороне сервера) - но, к счастью для всех нас, в Pike она есть :)
Но если вы собираетесь работать с DNS, вам придется решить, как обрабатывать все типы поиска, а не только записи A/AAAA. Простейшим способом будет выбрать один из ваших восходящих потоков в качестве основного (вероятно, OpenDNS) и использовать этот ответ без изменений.
Код будет выглядеть примерно так: