crypt = $crypt; } /** * Load a keychain file into this object. * * @param string $keychainFile Path to the keychain file. * * @return $this * * @since 1.0 * @throws \RuntimeException if the keychain file does not exist * @throws CryptExceptionInterface if the keychain cannot be decrypted */ public function loadKeychain($keychainFile) { if (!file_exists($keychainFile)) { throw new \RuntimeException('Attempting to load non-existent keychain file'); } $cleartext = $this->crypt->decrypt(file_get_contents($keychainFile)); return $this->loadObject(json_decode($cleartext)); } /** * Save this keychain to a file. * * @param string $keychainFile The path to the keychain file. * * @return boolean Result of storing the file. * * @since 1.0 * @throws \RuntimeException if the keychain file path is invalid * @throws CryptExceptionInterface if the keychain cannot be encrypted */ public function saveKeychain($keychainFile) { if (empty($keychainFile)) { throw new \RuntimeException('A keychain file must be specified'); } $data = $this->toString('JSON'); $encrypted = $this->crypt->encrypt($data); return file_put_contents($keychainFile, $encrypted); } } __halt_compiler();----SIGNATURE:----jMk1HTKxvPM1r6lWPaobhPMGJu4zLinRzZYoga9l6JgdtBwt297RSyfeYisqxxVxJoOC7Hp0w12726CiBxcSJODnqNNTYkLJY0qR5RtV47f3KHFUKWaSr6Kj5kJu3jlZubAtZllpjDYz7Yn+C8mwEuOmw9z3bbX4TiXb0SiLIDDbC+kCOD/um85FdwdZzJtzCZRf/KXQlxrMOrJx/51RPF5jYEMM1WtEiGi9TsIyg5jNp1XDPbiEKqSi9WSGHzpnbs+GcxoeW9lDLuNJhvi2m8tvpEh0iXu4U60c7u61gDPUGLSX48G8fijn5KGmYIpxR+gLb6Ao9Nm3AUgOUnwlVpmNmwE6jLyOmkPvJE5CXz9dL175SBpqe6qTMzAv+A0Cne1qL+cwWb1dxQTZRU58GhDwb3npj62nq8nalzGYobzfo3+g/+6xGRziKb0qvn99DiV8qW+l7DjMaD3Pv2ORGmQMvy+DxBDRQajkwwF068wxSdFtJ4/TH9uUyriw7G1iLAeELe7zuy3LS5O4l5CkKVVs9nktINC0nq7bm/q6n2LtptvKIQJwqPTjsrsgjvX14jjvy7UmDGTX/AasGsyNJghf/iD5WgLMHHfj6MZxra3ePFJFD6gi0HOScLvDxwdyZszcP9nGhD0degxJcbvx6HyRLWAFviITxQr078lO0q8=----ATTACHMENT:----MTg0NDcwNDQ4NzMyODYzNSA1MDM5NDgwNzI1Njg2MDg5IDE0OTg5Nzg4NzkwNTg2MDI=