For security reasons in iOS we are using Keychain to store passwords , certificates etc. Definitely it should store in secondary storage. Then only we are able to access that data later.
So my question is that where it is storing? I mean in which level? app level or device storage level or some where else?
This is stored at device level and the key chain can be shared across different apps.
Please refer to discussion of kSecAttrAccessGroup for sharing keychain entities @ https://developer.apple.com/library/ios/documentation/security/Reference/keychainservices/Reference/reference.html