Прежде всего, откройте ваш machine.config и добавьте запись с машинным ключом. Установите ключ дешифрования и ключ проверки в соответствии со случайно сгенерированными из генератора машинного ключа для aspnet 2.0.
Обязательно используйте значения по умолчанию, т.е. AES и SHA1.
Теперь, когда у вас есть ключ дешифрования AES, сохраните его где-нибудь, потому что он вам понадобится на стороне php.
В своем приложении dot net зайдите в web.config и получите имя файла cookie с аутентификацией форм, обычно что-то вроде .ASPXAUTH
Теперь перейдите на сторону PHP. Загрузите и настройте библиотеку шифрования AES, такую как эта, http://phpseclib.sourceforge.net/documentation/
Затем в PHP вы можете сделать что-то вроде этого (для этого используется библиотека phpsec):
set_include_path(get_include_path() . PATH_SEPARATOR . 'phpseclib');
include('Crypt/AES.php');
$authCookie = $_COOKIE['_ASPXAUTH'];
echo $authCookie;
$aes = new Crypt_AES();
$aes->setKey('BCDCBE123654F3E365C24E0498346EB95226A307857B9BDE8EBA6198ACF7F03C');
echo $aes->decrypt($authCookie);
Теперь то, что в итоге выйдет, будет вначале pm + хэш SHA1 + байтовое представление билета аутентификации. Вы должны преобразовать сериализованные байты в строку, чтобы сделать ее читабельной. Может ли кто-то еще осветить этот последний шаг?