Предпосылки изобретения
1. Ссылки на связанные заявки
Настоящий заявитель заявляет приоритет предварительной патентной заявки США 60/428,080 от 20 ноября 2002 на «Систему и способ для передачи сокращенной информации из сертификата для выполнения операций шифрования».
2. Область техники
Настоящее изобретение относится к защищенной связи. Более конкретно, настоящее изобретение относится к использованию сертификатов для шифрования передач.
3. Предшествующий уровень техники
Компьютерная и сетевая технология трансформировала методы работы людей и методы игр. Сети стали настолько эффективными, что простая компьютерная система с сетевыми возможностями может осуществлять связь с любой из миллиона других компьютерных систем, распространенных по всему миру в конгломерате сетей, часто определяемом понятием «Интернет». Такие компьютерные системы могут включать в себя настольный, портативный или планшетный персональные компьютеры; персональные цифровые помощники (карманные компьютеры - PDA), телефоны или любой другой компьютер или устройство, имеющее возможность осуществлять связь через цифровую сеть.
Чтобы осуществлять связь в сети, одна компьютерная система (определяемая здесь как компьютерная система-источник» или «клиентский компьютер-источник») создает или получает доступ иным образом к электронному сообщению и передает электронное сообщение по сети к другой компьютерной системе (определяемой здесь как «компьютерная система-получатель» или «клиентский компьютер-получатель»). Электронное сообщение может быть считано пользователем, как в случае, когда электронное сообщение является сообщением электронной почты или сообщением диалогового обмена сообщениями, или оно может быть считано приложением, исполняемым в принимающей компьютерной системе. Электронное сообщение может быть создано приложением, исполняемым в передающей компьютерной системе, при возможной помощи пользователя.
Хотя такой обмен электронными сообщениями предпочтительным образом позволяет вычислительным системам обмениваться информацией и при этом обслуживать связанных с ними пользователей способами, которые прежде были неизвестны, электронные сообщения подвержены перехвату. В зависимости от чувствительности информационного содержания электронного сообщения, это может нанести вред и даже иметь катастрофические последствия в некоторых случаях. Чтобы защитить электронные сообщения от перехвата, они часто шифруются, чтобы только те, кто имеет определенную двоичную последовательность (называемую «ключом»), могли дешифрировать электронное сообщение, чтобы получить доступ к информации, представленной в электронном сообщении. Прилагаются усилия, чтобы только принимающая компьютерная система имела доступ к ключу, требуемому для дешифрирования электронного сообщения. Соответственно, любой посторонний перехватчик, не прилагая экстраординарных чрезвычайных усилий, мог бы иметь доступ только к зашифрованной форме электронного сообщения.
При симметричном шифровании тот же самый ключ, который используется для шифрования электронного сообщения, может быть использован для дешифрирования электронного сообщения. При асимметричном шифровании «открытый ключ» и «секретный ключ» связаны с конкретной компьютерной системой. Открытый ключ известен для широкого круга компьютерных систем, в то время как секретный ключ не распространяется. Секретный ключ может быть использован для дешифрирования любых сообщений, которые зашифрованы с использованием открытого ключа. Секретный ключ является более чувствительным, чем открытый ключ, поскольку принимающая компьютерная система должна быть единственной компьютерной системой, имеющей возможность дешифрирования электронных сообщений, предназначенных для данной компьютерной системы.
Чтобы облегчить шифрование, передающая компьютерная система часто получает доступ к сертификату, связанному с принимающей компьютерной системой. На фиг. 8 показана структура данных сертификата 800, соответствующего предшествующему уровню техники. Сертификат 800 включает в себя информацию 803 проверки достоверности. Информация 803 проверки достоверности позволяет передающей компьютерной системе подтверждать достоверность того, что сертификат на самом деле соответствует принимающей компьютерной системе, и что сертификат не был отменен. Сертификат Х.509 является одним из типов сертификата, который широко используется в настоящее время. Информация подтверждения достоверности сертификата Х.509 может включать в себя, например, URL (унифицированный указатель информационного ресурса), к которому можно получить доступ, чтобы проверить, соответствует ли сертификат компьютерной системе-получателю. Информация подтверждения достоверности сертификата Х.509 может также включать в себя перечень отмены сертификата для указания на то, был ли сертификат отменен или нет.
Сертификат 800 также включает в себя информацию 802 идентификации сертификата, которая позволяет передающей компьютерной системе идентифицировать сертификат. Например, сертификат Х.509 может включать в себя, например, идентификатор ключа или, возможно, комбинацию идентификатора запрашивающей стороны и порядковый номер.
Сертификат 800 также включает в себя информацию 801 шифрования (например, открытый ключ в сертификате Х.509). Информация шифрования позволяет передающей компьютерной системе шифровать электронное сообщение таким образом, чтобы оно могло быть дешифрировано компьютерной системой-получателем в соответствии с сертификатом. Например, если передающая компьютерная система шифрует электронное сообщение с использованием открытого ключа, соответствующего компьютерной системе-получателю, то компьютерная система-получатель будет в идеальном случае единственной компьютерной системой, имеющей соответствующий секретный ключ, необходимый для дешифрирования электронного сообщения.
Имеются важные случаи, когда сертификат используется в пункте шифрования. Например, обычно при шифровании электронной почты, которая использует стандарт S/MIME, сертификат для принимающей компьютерной системы используется в самой передающей компьютерной системе, чтобы способствовать выполнению шифрования в передающей компьютерной системе. MIME (многоцелевые расширения электронной почты в сети Интернет) представляет собой спецификацию для форматирования сообщений в коде, отличном от ASCII (Американский стандартный код для обмена информацией), чтобы они могли передаваться по сети Интернет. Многие клиентские компьютеры с возможностями электронной почты поддерживают в настоящее время спецификацию MIME, что позволяет им передавать и принимать графические, аудио- и видеофайлы через почтовую систему Интернет. Спецификация MIME была определена в 1992 году Проблемной группой проектирования Интернет (IETF). S/MIME представляет собой стандарт, который определяет метод шифрования и кодирования информационного содержания сообщений электронной почты, которые совместимы со стандартом MIME. Стандарт S/MIME основан на технологии шифрования с использованием открытого ключа, описанной выше. Ожидается, что стандарт S/MIME будет широко распространен, что обеспечит возможность пользователя посылать секретные сообщения электронной почты друг другу, даже если они используют различающиеся приложения электронной почты.
Имеется ряд потенциальных недостатков, препятствующих широкому принятию и использованию технологии шифрования, основанной на сертификате, такой как технология, определенная стандартом S/MIME, в частности, в мобильных устройствах с ограниченной памятью. В настоящее время для шифрования сообщения в соответствии с технологией шифрования на основе сертификата, необходимо получить доступ ко всему сертификату. Сертификат Х.509 часто может иметь объем намного более 1 килобайта для каждого сертификата. Сертификат обычно используется для каждого потенциального получателя сообщения. Некоторые сообщения могут иметь многочисленных получателей, тем самым увеличивая объем памяти, требуемый для хранения сертификатов. Это могло бы значительно снизить характеристики в условиях работы в мобильном устройстве, которое в типовом случае имеет ограниченную память и ограниченные возможности процессора.
Кроме того, передающая компьютерная система часто получает сертификаты от другой компьютерной системы через соединения со значительным временем ожидания и/или узкой шириной полосы (например, кодовый вызов или беспроводное соединение). В частности, сертификаты часто сохраняются в централизованных хранилищах (репозитариях) или каталогах для доступа пользователями электронной почты. Размер сертификата существенно влияет на пользователей электронной почты, которые соединяются с этими хранилищами посредством медленно действующих сетевых соединений. Таким образом, предпочтительной была бы такая технология шифрования на основе сертификата, которая уменьшила бы требования к памяти, процессору и ширине полосы.
Сущность изобретения
Вышеописанные проблемы, свойственные предшествующему уровню техники, преодолеваются за счет принципов настоящего изобретения, направленных на механизм шифрования на основе сертификата, в котором полный сертификат не используется в пункте шифрования, тем самым обеспечивая экономию памяти и ресурсов процессора в пункте шифрования. Кроме того, когда пункт шифрования уже не имеет доступа к сертификату, меньшая его часть, а не весь сертификат передается в пункт шифрования, тем самым обеспечивая сбережение ширины полосы (и памяти) в сравнении с передачей (и сохранением) всего сертификата.
Принципы настоящего изобретения могут быть реализованы в сетевой среде, в которой клиентский компьютер-источник является пунктом шифрования для электронного сообщения, которое должно быть передано к одному или нескольким клиентским компьютерам-получателям. К сертификату может быть обеспечен доступ с сервера сертификатов, который обеспечивает соответствующие сертификаты по меньшей мере для некоторых из потенциальных клиентских компьютеров-получателей для электронного сообщения. Сертификат включает в себя информацию шифрования, которая позволяет, имея доступ к сертификату, зашифровывать электронное сообщение таким образом, чтобы оно могло быть дешифрировано объектом, соответствующим сертификату. Сертификат также включает в себя информацию самопроверки, которая позволяет, имея доступ к сертификату, проверить, что сертификат является действительным, что сертификация принадлежит соответствующему объекту, и что сертификат не был отменен.
Клиентский компьютер-источник получает доступ к электронному сообщению, которое должно передаваться к клиентскому компьютеру-получателю, и затем определяет, что электронное сообщение должно быть зашифровано. Клиентский компьютер-источник генерирует запрос для доступа только к части сертификата, соответствующего клиентскому компьютеру-получателю. Эта часть включает в себя информацию шифрования, но в ней может отсутствовать некоторая или даже вся информация самопроверки. Клиентский компьютер-источник затем передает запрос на сервер сертификатов, который принимает запрос и в ответ возвращает только запрошенную часть сертификата.
Возвращенная часть сертификата может быть намного меньшей, чем сертификат в целом. Соответственно, возврат только запрошенной части значительно сокращает ширину полосы, требуемую между сервером сертификатов и клиентским компьютером-источником. Когда клиентский компьютер-источник получает ответ, информация шифрования используется для шифрования электронного сообщения таким образом, чтобы оно могло дешифрироваться на клиентском компьютере-получателе.
Процесс шифрования может включать в себя использование открытого ключа для прямого шифрования содержимого электронного сообщения. Альтернативно, если сообщение должно приниматься множеством клиентских компьютеров-получателей, то информационное содержание электронного сообщения может быть зашифровано другим ключом (например, сеансовым ключом). Электронное сообщение может также включать в себя, для каждого клиентского компьютера-получателя, сеансовый ключ, зашифрованный его открытым ключом.
Соответственно, поскольку для шифрования передается и используется меньше чем весь сертификат, то память и ресурсы обработки в клиентском компьютере-источнике экономятся. Это особенно важно, если клиентский компьютер-источник является мобильным устройством, которое уже имеет ограниченные ресурсы процессора и памяти и часто имеет ограниченное по ширине полосы соединение с другими сетями. Настоящее изобретение в особенности полезно, если важна синхронизация, а также защищенность электронного сообщения.
Заметим, что некоторая информация самопроверки сертификата может не включаться в запрошенную часть сертификата. Для того, чтобы сохранить защищенность, связанную с возможностью проверки подлинности сертификата, проверка достоверности сертификата может выполняться сервером сертификатов. Предпочтительно, сервер сертификатов уже проверен на доверие клиентским компьютером-источником в той степени, что если сервер сертификатов выполняет такую проверку достоверности, то клиентский компьютер-источник должен считать, что сертификат действителен без независимой проверки достоверности сертификата.
Дополнительные признаки и преимущества изобретения поясняются в последующем описании и частично могут быть очевидны из описания или могут быть изучены при реализации изобретения. Признаки и преимущества изобретения могут быть реализованы и получены с помощью инструментов и комбинаций, в частности, указанных в пунктах формулы изобретения. Эти и другие признаки настоящего изобретения будут более понятны из последующего описания и формулы изобретения или могут быть изучены в процессе реализации изобретения, как изложено ниже.
Краткое описание чертежей
Для того чтобы описать способ, которым могут быть получены вышеописанные и другие преимущества и признаки, более конкретное описание изобретения, кратко описанное выше, будет проиллюстрировано ссылками на конкретные варианты осуществления, которые иллюстрируются прилагаемыми чертежами. Исходя из того, что эти чертежи изображают только типовые варианты осуществления изобретения и поэтому не должны рассматриваться как ограничивающие его объем, изобретение будет описано и пояснено с дополнительной конкретизацией и деталями с использованием иллюстрирующих чертежей, на которых показано следующее:
Фиг. 1 - подходящее беспроводное устройство, в котором могут быть реализованы признаки настоящего изобретения;
Фиг. 2 - подходящая сетевая среда, в которой могут быть использованы принципы настоящего изобретения, включая клиентский компьютер-источник, использующий информацию от сервера сертификатов для шифрования электронных сообщений, подлежащих передаче клиентским компьютерам-получателям;
Фиг. 3 - блок-схема способа, используемого клиентским устройством-источником для шифрования электронного сообщения, подлежащего передаче на одно или несколько клиентских устройств-получателей, и сервером сертификатов, обеспечивающим указанное, в соответствии с принципами настоящего изобретения;
Фиг. 4 - структура данных запроса сертификата в соответствии с принципами настоящего изобретения;
Фиг. 5 - структура данных ответа на запрос в соответствии с принципами настоящего изобретения;
Фиг. 6 - структура данных электронного сообщения, зашифрованного с использованием сертификата (или его части) в соответствии с принципами настоящего изобретения;
Фиг. 7 - структура данных частичного сертификата без информации самопроверки в соответствии с принципами настоящего изобретения и
Фиг. 8 - структура данных полного сертификата с информацией самопроверки в соответствии с предшествующим уровнем техники.
Детальное описание предпочтительных вариантов осуществления изобретения
Принципы настоящего изобретения относятся к механизму шифрования на основе сертификата, в котором клиентское устройство-источник не получает доступ ко всему сертификату, соответствующему клиентскому устройству-получателю, при шифровании электронного сообщения, подлежащего передаче клиентскому устройству-получателю. Вместо этого клиентское устройство-источник только запрашивает часть сертификата от сервера сертификатов. Эта часть включает в себя информацию шифрования, но может не иметь некоторой или даже всей информации самопроверки в сертификате. Если реализуется проверка достоверности, то сервер сертификатов выполняет любую проверку достоверности сертификата до передачи информации шифрования к клиентскому устройству-источнику. Не требуется отдельной проверки подлинности сертификата клиентским устройством-источником, особенно если сервер сертификатов уже проверен на доверие клиентским устройством-источником.
Клиентское устройство-источник использует более ограниченные части сертификата (что может быть определено как «мини-сертификат» или как «частичный сертификат»), чтобы шифровать сообщение. Поскольку частичный сертификат намного меньше, чем полный сертификат, это сокращает память и ресурсы процессора, используемые для выполнения шифрования на основе сертификата, а также снижает требования по ширине полосы между сервером сертификатов и клиентским устройством-источником.
Варианты осуществления настоящего изобретения могут включать в себя специализированное или универсальное компьютерное устройство, включая различные компьютерные аппаратные средства, как описано более подробно ниже. Варианты осуществления, входящие в объем настоящего изобретения, также включают в себя считываемые компьютером носители для переноса или хранения считываемых компьютером инструкций или структур данных, сохраненных на них. Такие считываемые компьютером носители могут представлять собой любые доступные носители, к которым может иметь доступ универсальный или специализированный компьютер. Например, но не в качестве ограничения, такие считываемые компьютером носители могут включать в себя физические носители для хранения данных, такие как RAM (ОЗУ), ROM (ПЗУ), EEPROM (электронно-стираемое программируемое ПЗУ - ЭСППЗУ), CD-ROM (ПЗУ на компакт-дисках) или другие устройства памяти на оптических дисках, на магнитных дисках, или магнитные ЗУ, или любые другие носители записи, которые могут использоваться для переноса или хранения желательных средств программного кода в форме исполняемых компьютером инструкций или структур данных, и доступ к которым может быть осуществлен универсальным или специализированным компьютером. Считываемые компьютером носители данных могут представлять собой постоянную память, или память исполняемой программы, или их комбинацию.
Фиг. 1 и последующее описание предназначены для того, чтобы обеспечить краткое обобщенное описание соответствующей компьютерной среды, в которой может быть реализовано изобретение. Хотя это не является обязательным, изобретение будет описано в общем контексте исполняемых компьютером инструкций, таких как программные модули, исполняемые компьютерными устройствами. В принципе, программные модули включают в себя стандартные программы (подпрограммы), программы, объекты, компоненты, структуры данных и тому подобные средства, которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных.
Как показано на фиг. 1, соответствующая операционная среда, подходящая для реализации принципов настоящего изобретения, включает в себя универсальное вычислительное устройство в форме беспроводного устройства 100. Хотя беспроводное устройство 100 имеет вид беспроводного телефона, самые разнообразные устройства имеют возможность в настоящее время осуществлять связь по беспроводной сети и могут иметь выгоду от использования принципов настоящего изобретения. Например, в настоящее время доступны портативные компьютеры, планшетные ПК, персональные цифровые помощники и другие беспроводные устройства. Другие формы беспроводных устройств могут быть разработаны в будущем. Принципы настоящего изобретения не ограничены конкретной формой беспроводного устройства.
Беспроводное устройство 100 включает в себя пользовательский интерфейс 101 для обеспечения пользователю возможности ввода информации через пользовательский интерфейс 103 ввода. Пользователь просматривает информацию, представляемую посредством пользовательского интерфейса 102 вывода. Пользовательский интерфейс будет в значительной степени варьироваться в зависимости от конструктивных характеристик беспроводного устройства. В показанном варианте осуществления, в котором беспроводное устройство 100 является портативным компьютером, пользовательский интерфейс 102 вывода включает в себя громкоговоритель для представления аудиоинформации пользователю, а также дисплей 105 для представления визуальной информации пользователю.
Пользовательский интерфейс 103 ввода может включать в себя микрофон 106 для воспроизведения аудиоинформации в электронной форме. Дополнительно, пользовательский интерфейс 103 ввода включает в себя средства управления 107 набором номера и средства управления 108 навигацией, которые позволяют пользователю вводить информацию в беспроводное устройство 100.
Средство программного кода, содержащее один или более программных модулей, может быть сохранено в памяти 112. Один или несколько программных модулей могут включать в себя операционную систему 113, одну или несколько прикладных программ 114, другие программные модули 115 и программные данные 116. Один или несколько программных модулей могут быть реализованы в виде экземпляра в памяти (энергозависимой) или загружены из памяти (энергонезависимой) и затем могут обрабатываться с использованием процессора 111. Средство программного кода может включать в себя энергонезависимую и энергозависимую память, и ее форма может варьироваться в значительной степени в зависимости от типа беспроводного устройства.
Хотя фиг. 1 представляет подходящую операционную среду для настоящего изобретения, принципы настоящего изобретения могут быть использованы в любом беспроводном устройстве, которое может осуществлять связь в беспроводной сети. Беспроводное устройство, показанное на фиг. 1, является всего лишь иллюстративным, и ни в коей мере не представляет даже малую часть широкого разнообразия сред, в которых могут быть реализованы принципы настоящего изобретения.
На фиг. 2 представлена сетевая среда 200, в которой могут быть использованы принципы настоящего изобретения. Сетевая среда 200 включает в себя клиентскую компьютерную систему-источник 210. В данном описании и в формуле изобретения термин «компьютерная система» означает любой компонент аппаратных средств или комбинацию компонентов аппаратных средств, которые имеют возможность исполнять программное обеспечение с использованием одного или нескольких процессоров. Компьютерная система может представлять собой систему или устройство, которое имеет средства обработки. Компьютерная система может представлять собой, например, портативный компьютер, настольный компьютер, планшетный компьютер, карманный компьютер, мобильный телефон или любую другую систему или устройство обработки как существующее, так и то, которое будет разработано в будущем.
В данном описании и в формуле изобретения термин «клиентская компьютерная система» или «клиентский компьютер» («клиент») означает любую компьютерную систему, которая получает услуги от другой компьютерной системы, независимо от того, обеспечивает ли также данная клиентская компьютерная система услуги для других компьютерных систем. Например, клиентский компьютер-источник 210 получает услуги сервера 220 сертификатов, который действует для обеспечения сертификатов (или их частей) клиентскому компьютеру-источнику 210 по мере необходимости. В данном примере клиентский компьютер-источник 210 получает доступ к электронному сообщению (независимо от того, создал ли он, или нет, это электронное сообщение), которое должно быть переслано к одному или нескольким клиентским компьютерам-получателям 230, включая любой из клиентских компьютеров-получателей 231, 232, 233, 234, среди потенциально возможного большего их числа, как представлено вертикальными символами 235. Клиентский компьютер-источник 210 и клиентские компьютеры-получатели 231, 232, 233 и 234 могут быть конфигурированы, как описано выше для беспроводного устройства 100 или могут иметь любую другую форму, которая соответствует определению компьютерной системы, изложенному выше.
Фиг. 3 иллюстрирует способ 300 шифрования клиентской компьютерной системой-источником сообщения, которое должно быть послано по меньшей мере одному из клиентских компьютеров-получателей с помощью сервера сертификатов в соответствии с принципами настоящего изобретения. Некоторые действия и этапы способа 300 могут быть выполнены клиентским компьютером-источником 210, как представлено левым столбцом на фиг. 3 под заголовком «Клиентский компьютер-источник». Другие действия способа 300 выполняются сервером 220 сертификатов, как представлено в правом столбце на фиг. 3 под заголовком «Сервер сертификатов».
Клиентский компьютер-источник 210 сначала получает доступ к электронному сообщению, которое должно передаваться по меньшей мере к одному клиентскому компьютеру-получателю (действие 301). Электронное сообщение может быть получено из локальной памяти или, возможно, получено от другой компьютерной системы для доставки к компьютерной системе-получателю. Кроме того, электронное сообщение может представлять собой предварительную версию окончательной версии электронного сообщения, которое должно предаваться к клиентскому компьютеру-получателю.
Клиентский компьютер-источник 210 затем определяет, что электронное сообщение должно быть зашифровано перед передачей к клиентскому компьютеру-источнику (действие 302). Это определение может быть сделано в ответ на установку конфигурации, конкретную установку, связанную с клиентским компьютером-получателем или группой клиентских компьютеров, к которой относится данный клиентский компьютер-получатель, или, возможно, в ответ на запрос от пользователя клиентского компьютера-источника.
Клиентский компьютер-источник 210 затем выполняет функциональный, ориентированный на результат этап шифрования для выполнения шифрования на основе сертификата для клиентского компьютера-источника, не требуя локального доступа к полному сертификату, соответствующему клиентскому компьютеру-получателю (этап 303). Этот ориентированный на результат этап включает любые соответствующие действия для достижения этого результата. Однако в иллюстрируемом варианте осуществления этап 303 включает соответствующие действия 304, 305 и 309.
Более конкретно, клиентский компьютер-источник 210 генерирует запрос для доступа только к части сертификата, соответствующего клиентскому компьютеру-получателю. Эта часть может представлять собой сертификат, показанный на фиг. 7 как частичный сертификат 700. Частичный сертификат 700 включает в себя информацию 701, необходимую для шифрования электронного сообщения таким образом, чтобы оно могло дешифрироваться клиентским компьютером-получателем. Информация 701 шифрования частичного сертификата 700 может быть подобной информации 801 шифрования полного сертификата. Например, если полный сертификат 800 представлял собой сертификат Х.509, информация 701 шифрования может представлять собой открытый ключ, который соответствует секретному ключу, принадлежащему клиентскому компьютеру-получателю.
Частичный сертификат 700 может также включать в себя информацию 702 идентификации сертификата, которая идентифицирует полный сертификат 800, соответствующий частичному сертификату 700. Информация 702 идентификации сертификата может включать в себя, например, по меньшей мере часть информации 802 идентификации сертификата, относящейся к полному сертификату. Например, если полный сертификат 800 представлял собой сертификат Х.509, то информация 702 идентификации сертификата может включать в себя идентификатор ключа или, альтернативно или в дополнение, комбинацию идентификатора запрашивающей стороны и серийного номера сертификата. Хотя часть информации 803 проверки достоверности может также включаться в частичный сертификат 700, никакая информация 803 проверки достоверности не показана как содержащаяся в составе частичного сертификата. Поскольку частичный сертификат 700 не содержит большей части информации полного сертификата 800, размер частичного сертификата 700 будет намного меньше, чем размер полного сертификата.
После того как клиентский компьютер-источник 210 сформирует запрос на доступ к части сертификата (действие 304), клиентский компьютер-источник 210 передает запрос к серверу 220 сертификатов (действие 305). Эта передача представлена на фиг. 2 запросом 211, передаваемым от клиентского компьютера-источника 210 к серверу 220 сертификатов, как представлено стрелкой 211А.
На фиг. 4 схематично представлена структура данных запроса 211 в соответствии с настоящим изобретением. Запрос 211 включает в себя информацию 401 заголовка. Эта информация 401 заголовка может включать в себя любую информацию, используемую протоколом передачи. Например, если электронное сообщение представляет собой запрос протокола передачи гипертекста (НТТР) (например, запрос НТТР POST), то запрос 211А будет включать в себя информацию заголовка НТТР. Использование протокола НТТР для передачи запроса полезно в случаях, когда сервер сертификатов 220 не находится в одной локальной сети с клиентским компьютером-источником 210, а доступен только через Интернет.
Запрос 211 также включает в себя идентификацию клиентского компьютера-получателя 402. Эта идентификация может быть в форме, например, унифицированного указателя информационного ресурса (URL), адреса протокола Интернет (IP), или адреса электронной почты, связанного с клиентским(и) компьютером(ами)-получателем(ями). Если идентификация была в форме неразрешенного имени индивидуального клиентского компьютера-получателя, сервер 220 сертификатов может также осуществить разрешение для имени конкретного клиентского компьютера-получателя и предоставить результат этого разрешения клиентскому компьютеру-источнику 210 в то же время, когда запрошенный частичный или полный сертификат предоставляется сервером сертификатов клиентскому компьютеру-источнику. Если идентификация была в форме неразрешенного имени или списка распределения, то сервер сертификатов может расширить список распределения и затем возвратить клиентскому компьютеру-источнику 210 либо частичный, либо полный сертификат для каждого из клиентских компьютеров-получателей в соответствии со списком распределения. Записи в списке распределения включают в себя индивидуализированные объекты, а также потенциально один или более других дочерних списков распределения. Расширение списка распределения означает идентификацию каждого индивидуализированного объекта, включенного в список распределения путем, во-первых, включения любого индивидуализированного объекта, непосредственно идентифицированного в списке распределения, а затем рекурсивного выполнения того же расширения для любого одного или нескольких из других дочерних списков распределения. Посредством такого рекурсивного процесса все индивидуализированные объекты в списке распределения идентифицируются, даже если эти индивидуализированные объекты идентифицированы только в дочернем или другом производном списке распределения. Альтернативно, такое разрешение имен адреса может выполняться отдельно сервером 220 сертификатов или некоторым другим сервером разрешения (не показан) и/или посредством механизма разрешения, внутреннего для клиентского компьютера-источника 210.
Запрос 211 также включает в себя запрос 403 сертификата, который содержит указание на то, запрошена ли полная версия сертификата (как представлено полем 404 полной версии) или частичная версия сертификата (как представлено полем 405 частичной версии). Если имеется более одного клиентского компьютера-получателя соответственно запросу сертификата, то запрос может определять, что для всех клиентских компьютеров-получателей желательна полная версия сертификата, или что для всех клиентских компьютеров-получателей желательна частичная версия сертификата. Альтернативно, запрос может определять, что частичный сертификат должен быть возвращен только для указанной группы клиентских компьютеров-получателей и что полный сертификат должен быть возвращен для других. Кроме того, запрос может определять, что полный сертификат может быть возвращен только для указанной группы клиентских компьютеров-получателей и что частичный сертификат должен быть возвращен для других. Ниже описан пример конкретного запроса сертификата в форме запроса "getcert" (получить сертификат).
Команда "getcert" может находиться в составе запроса HTTP POST и включать в себя текст "cmd=getcert", чтобы тем самым идентифицировать, что данный запрос предназначается для запроса сертификата.
Адресное поле "addrs=[ADDRESS] может указывать список одного или нескольких адресов одного или нескольких клиентских компьютеров-получателей, сертификаты которых требуются. Если заглавные буквы заключены в квадратные скобки, то это означает, что действительное значение типа, описанного заглавными буквами, будет заменять квадратные скобки и их содержимое в сообщении. Например, [ADDRESS] будет заменено действительным адресом клиентского компьютера-получателя, или неразрешенное имя будет разрешено сервером сертификатов в виде адреса. По команде "getcert" данные разрешения не возвращаются назад к клиентскому компьютеру-источнику, а возвращается только сертификат для разрешенного адреса.
Факультативное поле "minicert=[t/f]", если оно установлено на «истинно», обуславливает возврат сервером 220 сертификатов частичного сертификата, а не полного сертификата. В противном случае, если оно установлено на «ложно» или если поле minicert отсутствует, то будет возвращен полный сертификат. Поле minicert может соответствовать конкретному клиентскому компьютеру-получателю, представленному полем addrs или может представлять некоторые или все клиентские компьютеры-получатели, представленные полем addrs в запросе.
Сервер 220 сертификатов принимает запрос от клиентского компьютера-источника 210 (действие 306), определяет, что запрашивается только частичный сертификат (действие 307), и затем отвечает возвратом только частичного сертификата для клиентского компьютера-получателя (действие 308). В соответствии с фиг. 2, сервер 220 сертификатов возвращает ответ 212 клиентскому компьютеру-источнику 210, как представлено стрелкой 212А.
На фиг. 5 показана приведенная для примера структура данных ответа 212. Ответ включает в себя информацию 501 заголовка. Например, если запрос 211 представлял собой запрос протокола НТТР, ответ 212 может быть ответом протокола НТТР, и в этом случае информация заголовка должна быть информацией заголовка ответа протокола НТТР. Ответ также включает в себя сертификат 503 для каждого из клиентских компьютеров-получателей электронного сообщения. Сертификат может представлять собой полный сертификат, как представлено элементом 504, или может быть частичным сертификатом, как представлено элементом 505. Однако в соответствии с принципами настоящего изобретения, частичный сертификат возвращается по меньшей мере для одного из клиентских компьютеров-получателей, чтобы принять электронное сообщение.
Ниже представлена возможная схема для ответа, содержащегося в ответе HTTP POST (номера строк добавлены для ясности)
Строки 1-3 представляют элемент на языке XML (XML-элемент) «ответа». Атрибут "xmlns" представляет пространство имен, соответствующее XML-элементу, которое может быть использовано для синтаксического анализа и интерпретации и определения значения XML-элемента.
Строка 2 представляет XML-элемент "cert", который может быть повторен для каждого клиентского компьютера-получателя (или их группы в случае, когда адрес является списком распределения), который был представлен полем addrs в запросе.
Содержанием элемента cert является сертификат или сертификаты, соответствующие элементу addrs, что может иметь следующую форму (номера строк добавлены для ясности):
1. [DWORD: размер полного содержания элемента cert]
2. [DWORD: суммарное число получателей, для которых элемент cert содержит сертификат (может быть равно нулю, если получатель был неразрешенным]
3. [DWORD: суммарное число найденных сертификатов (может быть равно нулю, если не было найдено действительных сертификатов]
4. [сертификат 1]
5..
6..
7..
8. [сертификат М]
Строки 1-3 являются двойными словами (DWORDs), представляющими информацию о полном содержании элемента cert. Строки 4-8 представляют, что может быть множество разделов сертификатов. В этом случае сертификат включает в себя сертификаты 1...М, где в строках 5-7 показаны вертикальные символы, представляющие переменное число сертификатов между первым и М-м сертификатом. Каждый раздел сертификата может быть структурирован следующим образом (нумерация строк добавлена для ясности):
1. [WORD: размер сертификата]
2. [WORD: флаги (могут показывать, является ли сертификат полным или частичным сертификатом, и идентифицирован ли сертификат идентификатором ключа]
3. [СОБСТВЕННО ЧАСТИЧНЫЙ ИЛИ ПОЛНЫЙ СЕРТИФИКАТ]
Согласно более обобщенному примеру, показанному на фиг. 2 и 3, клиентский компьютер-источник 210 получает только запрошенную часть сертификата от сервера (действие 309). На этом этапе клиентский компьютер-источник 210 теперь готов для шифрования электронного сообщения для приема каждым из клиентских компьютеров-получателей, к которым должно передаваться электронное сообщение. Поскольку только частичный сертификат был возвращен для некоторых, или даже для всех, из клиентских компьютеров-получателей, которым должно передаваться электронное сообщение, и поскольку частичный сертификат намного меньше (может быть, даже на порядок величины), чем полный сертификат, то сертификат может быть доставлен намного быстрее и с использованием намного меньшей ширины полосы от сервера 220 сертификатов к клиентскому компьютеру-источнику.
Клиентский компьютер-источник затем использует информацию шифрования в рамках частичного сертификата для шифрования электронного сообщения. Как упомянуто ранее, информация 701 шифрования представлена в частичном сертификате 700 на фиг. 7. Информация шифрования может представлять собой, например, открытый ключ, соответствующий клиентскому компьютеру-получателю, которому должно посылаться электронное сообщение.
Если электронное сообщение должно посылаться множеству клиентских компьютеров-получателей, то электронное сообщение может быть зашифровано для каждого клиентского компьютера-получателя. Это может быть выполнено отдельным шифрованием содержимого для каждого клиентского компьютера-получателя с использованием соответствующего открытого ключа для каждого клиентского компьютера-получателя. Однако если бы имелось множество клиентских компьютеров-получателей, то это была бы задача, требующая интенсивной обработки, которая могла бы привести в результате к высокой степени использования памяти и ширины полосы при доставке электронного сообщения.
Для того, чтобы снизить требования к процессору, памяти и ширине полосы, электронное сообщение может быть альтернативно структурировано, подобно электронному сообщению 600, показанному на фиг. 6. Содержимое 601 электронного сообщения зашифровывается с использованием ключа 602 сеанса. Каждый клиентский компьютер-получатель информируется о ключе 602 сеанса путем шифрования ключа 602 сеанса с использованием открытого ключа, соответствующего данному клиентскому компьютеру-получателю. Например, предположим, что электронное сообщение 600 должно передаваться к каждому из клиентских компьютеров-получателей 231-234, имеющих соответствующие открытые ключи 1-4. В данном случае ключ 602 сеанса связи должен шифроваться отдельно с использованием открытых ключей 1-4.
Идентификатор 612 ключа связан с ключом 602 сеанса, который был зашифрован с использованием открытого ключа 1, идентифицированного идентификатором 612 ключа. Идентификатор 613 ключа ассоциирован с ключом 602 сеанса, который был зашифрован с использованием открытого ключа 2, идентифицированного идентификатором 613 ключа. Комбинация идентификатора 614А запрашивающей стороны и серийного номера 614В ассоциирована с ключом 602 сеанса, который был зашифрован с использованием открытого ключа 3, который является уникальным для комбинации 614А и 614В. Комбинация идентификатора 615А запрашивающей стороны и серийного номера 615В ассоциирована с ключом 602 сеанса, который был зашифрован с использованием открытого ключа 4, который является уникальным для комбинации 615А и 615В. После приема сообщения 213 каждый клиентский компьютер-получатель может использовать идентификатор ключа или комбинацию идентификатора запрашивающей стороны и серийного номера для определения того, какую зашифрованную форму ключа сеанса он может дешифрировать. Клиентский компьютер-получатель затем дешифрирует ключ сеанса и использует ключ сеанса для дешифрирования информационного содержания.
Соответственно, поскольку защищенная связь обеспечивается с использованием сертификатов сокращенного размера, то ресурсы памяти, процессора и сетевой ширины полосы могут сберегаться, а время, требуемое для передачи защищенного электронного сообщения, может быть уменьшено.
Настоящее изобретение может быть реализовано в других конкретных формах без отклонения от его сущности или существенных характеристик. Описанные варианты осуществления должны рассматриваться во всех отношениях только как иллюстративные, но не ограничивающие. Поэтому объем изобретения определяется формулой изобретения, но не вышеизложенным описанием. Все изменения, которые находятся в пределах эквивалентности пунктов формулы изобретения, должны входить в их объем.
название | год | авторы | номер документа |
---|---|---|---|
ЗАЩИЩЕННАЯ ОБРАБОТКА МАНДАТА КЛИЕНТСКОЙ СИСТЕМЫ ДЛЯ ДОСТУПА К РЕСУРСАМ НА ОСНОВЕ Web | 2003 |
|
RU2332711C2 |
ЗАЩИЩЕННАЯ ОБРАБОТКА МАНДАТА КЛИЕНТСКОЙ СИСТЕМЫ ДЛЯ ДОСТУПА К РЕСУРСАМ НА ОСНОВЕ WEB | 2008 |
|
RU2447490C2 |
БЕЗОПАСНЫЙ ТРАНСПОРТ ЗАШИФРОВАННЫХ ВИРТУАЛЬНЫХ МАШИН С НЕПРЕРЫВНЫМ ДОСТУПОМ ВЛАДЕЛЬЦА | 2015 |
|
RU2693313C2 |
УПРАВЛЕНИЕ КОНФИДЕНЦИАЛЬНОЙ СВЯЗЬЮ | 2016 |
|
RU2718689C2 |
СПОСОБ И СИСТЕМЫ ДЛЯ ОБЕСПЕЧЕНИЯ БЕЗОПАСНОГО РАСПРЕДЕЛЕНИЯ ДАННЫХ ЧЕРЕЗ СЕТИ ОБЩЕГО ПОЛЬЗОВАНИЯ | 2003 |
|
RU2300845C2 |
ЭЛЕКТРОННАЯ СЕРТИФИКАЦИЯ, ИНДЕНТИФИКАЦИЯ И ПЕРЕДАЧА ИНФОРМАЦИИ С ИСПОЛЬЗОВАНИЕМ КОДИРОВАННЫХ ГРАФИЧЕСКИХ ИЗОБРАЖЕНИЙ | 2008 |
|
RU2494455C2 |
РАСПРЕДЕЛЕНИЕ КЛЮЧА ДЛЯ ЗАЩИЩЕННОГО ОБМЕНА СООБЩЕНИЯМИ | 2006 |
|
RU2425450C2 |
УПРАВЛЕНИЕ ПРАВАМИ ДОСТУПА К РАЗГОВОРУ | 2010 |
|
RU2520396C2 |
СИСТЕМЫ И СПОСОБЫ ДЛЯ КРИПТОГРАФИЧЕСКОЙ БЕЗОПАСНОСТИ КАК СЕРВИС | 2014 |
|
RU2630751C2 |
ЗАПЕЧАТЫВАНИЕ ДАННЫХ С ПОМОЩЬЮ АНКЛАВА ЗАПЕЧАТЫВАНИЯ | 2017 |
|
RU2759329C2 |
Изобретение относится к системам защиты информации. Техническим результатом является сокращение объема памяти и ресурсов процессора для выполнения шифрования на основе сертификата, а также снижение требования по ширине полосы между сервером сертификатов и клиентским устройством-источником. Результат достигается тем, что в механизме шифрования на основе сертификата клиентский компьютер-источник не получает доступ ко всему сертификату, соответствующему клиентскому компьютеру-получателю, при шифровании электронного сообщения, которое должно быть передано к клиентскому компьютеру-получателю. Вместо этого, клиентский компьютер-источник запрашивает от сервера сертификатов только часть сертификата. Эта часть включает в себя информацию шифрования, но может не включать в себя некоторую или даже всю информацию самопроверки в сертификате. Сервер сертификатов предпочтительно выполняет любую проверку достоверности сертификата перед передачей информации шифрования к клиентскому компьютеру-источнику, что позволяет не проверять отдельно достоверность сертификата клиентским компьютером-источником, особенно если сервер сертификатов проверен на доверие клиентским компьютером-источником. 5 н. и 31 з.п. ф-лы, 8 ил.
определяют, что электронное сообщение должно быть зашифровано перед передачей на клиентский компьютер-получатель, формируют запрос для доступа только к части сертификата, соответствующего клиентскому компьютеру-получателю, причем упомянутая часть включает в себя информацию шифрования, необходимую для шифрования электронного сообщения таким образом, чтобы его можно было дешифрировать на клиентском компьютере-получателе,
передают запрос на сервер сертификатов,
принимают только запрошенную часть сертификата от сервера сертификатов и
используют информацию шифрования для шифрования электронного сообщения.
первое поле данных, которое представляет электронное сообщение, зашифрованное с использованием ключа сеанса, и
второе поле данных, которое представляет ключ сеанса, зашифрованный с использованием открытого ключа.
первое поле данных, которое представляет электронное сообщение, зашифрованное с использованием ключа сеанса, и
второе поле данных, которое представляет ключ сеанса, запрашивающую сторону сертификата и порядковый номер, зашифрованный с использованием открытого ключа.
первое поле данных, которое представляет электронное сообщение, зашифрованное с использованием ключа сеанса, и
второе поле данных, которое представляет ключ сеанса и идентификатор ключа, зашифрованный с использованием открытого ключа.
определяют, что электронное сообщение должно быть зашифровано перед передачей второму клиентскому компьютеру-получателю,
формируют запрос для доступа только к части второго сертификата, соответствующего второму клиентскому компьютеру-получателю, причем упомянутая часть включает в себя информацию шифрования, необходимую для шифрования электронного сообщения таким образом, чтобы оно могло быть дешифрировано вторым клиентским компьютером-получателем,
передают запрос на сервер сертификатов,
принимают только запрошенную часть второго сертификата от сервера сертификатов и
используют информацию шифрования во втором сертификате для шифрования электронного сообщения.
определяют, что электронное сообщение должно быть зашифровано перед передачей второму клиентскому компьютеру-получателю,
формируют запрос для доступа к полному второму сертификату, соответствующему второму клиентскому компьютеру-получателю,
передают запрос на сервер сертификатов,
принимают полный второй сертификат от сервера сертификатов и используют информацию шифрования во втором сертификате для шифрования электронного сообщения.
действия получения клиентским компьютером-источником доступа к электронному сообщению, которое должно быть передано на клиентский компьютер-получатель из множества клиентских компьютеров-получателей,
действия определения, что электронное сообщение должно быть зашифровано перед передачей на клиентский компьютер-получатель,
действия формирования запроса для доступа только к части сертификата, соответствующего клиентскому компьютеру-получателю, причем упомянутая часть включает в себя информацию шифрования, необходимую для шифрования электронного сообщения таким образом, чтобы его можно было дешифрировать на клиентском компьютере-получателе,
действия передачи запроса на сервер сертификатов,
действия приема только запрошенной части сертификата от сервера сертификатов и
действия использования информации шифрования для шифрования электронного сообщения.
действия определения, что электронное сообщение должно быть зашифровано перед передачей второму клиентскому компьютеру-получателю,
действия формирования запроса для доступа только к части второго сертификата, соответствующего второму клиентскому компьютеру-получателю, причем упомянутая часть включает в себя информацию шифрования, необходимую для шифрования электронного сообщения таким образом, чтобы оно могло быть дешифрировано вторым клиентским компьютером-получателем,
действия передачи запроса на сервер сертификатов,
действия приема только запрошенной части второго сертификата от сервера сертификатов и
действия использования информации шифрования во втором сертификате для шифрования электронного сообщения.
действия определения, что электронное сообщение должно быть зашифровано перед передачей второму клиентскому компьютеру-получателю, действия формирования запроса для доступа к полному второму сертификату, соответствующему второму клиентскому компьютеру-получателю,
действия передачи запроса на сервер сертификатов,
действия приема полного второго сертификата от сервера сертификатов и действия использования информации шифрования во втором
сертификате для шифрования электронного сообщения.
отличающийся тем, что один или несколько считываемых компьютером носителей являются физическими носителями данных.
клиентский компьютер-источник получает доступ к электронному сообщению, которое должно быть передано на клиентский компьютер-получатель из множества клиентских компьютеров-получателей,
определяют, что электронное сообщение должно быть зашифровано перед передачей на клиентский компьютер-получатель,
выполняют шифрование на основе сертификата для клиентского компьютера-получателя без локального доступа к полному сертификату, соответствующему клиентскому компьютеру-получателю.
формируют запрос на доступ только к части сертификата, соответствующего клиентскому компьютеру-получателю, причем упомянутая часть включает в себя информацию шифрования, необходимую для шифрования электронного сообщения таким образом, чтобы его можно было дешифрировать на клиентском компьютере-получателе,
передают запрос на сервер сертификатов,
принимают только запрошенную часть сертификата от сервера сертификатов и
используют информацию шифрования для шифрования электронного сообщения.
принимают запрос от клиентского компьютера-источника, определяют, что запрос предназначен для доступа только к части сертификата, соответствующего клиентскому компьютеру-получателю, причем упомянутая часть включает в себя информацию шифрования, необходимую для шифрования электронного сообщения таким образом, чтобы иметь возможность его дешифрирования клиентским компьютером-получателем, и
отвечают на запрос от клиентского компьютера-источника путем возврата запрошенной части сертификата к клиентскому компьютеру-источнику.
определяют, что запрос соответствует доступу только к части второго сертификата, соответствующего второму клиентскому компьютеру-получателю, информация шифрования необходима для шифрования электронного сообщения таким образом, чтобы оно могло быть дешифрировано вторым клиентским компьютером-получателем, и
отвечают на запрос от клиентского компьютера-источника путем возврата запрошенной части второго сертификата к клиентскому компьютеру-источнику.
действия приема запроса от клиентского компьютера-источника,
действия определения, что запрос предназначен для доступа только к части сертификата, соответствующего клиентскому компьютеру-получателю, причем упомянутая часть включает в себя информацию шифрования, необходимую для шифрования электронного сообщения таким образом, чтобы иметь возможность его дешифрирования клиентским компьютером-получателем, и
действия ответа на запрос от клиентского компьютера-источника путем возврата запрошенной части сертификата к клиентскому компьютеру-источнику.
действия определения, что запрос соответствует доступу только к части второго сертификата, соответствующего второму клиентскому компьютеру-получателю, информация шифрования необходима для шифрования электронного сообщения таким образом, чтобы оно могло быть дешифрировано вторым клиентским компьютером-получателем, и действия ответа на запрос от клиентского компьютера-источника путем возврата запрошенной части второго сертификата к клиентскому компьютеру-источнику.
WO 9834374 A1, 06.08.1998 | |||
СПОСОБ СЕКРЕТНОГО ИСПОЛЬЗОВАНИЯ ЦИФРОВЫХ ПОДПИСЕЙ В КОММЕРЧЕСКОЙ КРИПТОГРАФИЧЕСКОЙ СИСТЕМЕ | 1995 |
|
RU2144269C1 |
Способ обнаружения аномального трафика в сети | 2023 |
|
RU2811840C1 |
KR 20020024062 A, 29.03.2002 | |||
RU 97102357 A, 10.03.1999. |
Авторы
Даты
2009-02-10—Публикация
2003-11-19—Подача