What you wish for is exactly what HealthKit is. All app access is gated by ACLs that require per-app and per-record-type user approval, and always encrypted when transmitted off of your device. This is a quote from the Apple Health Privacy Policy:
> When your device is locked with a passcode, Touch ID, or Face ID, all of your health and fitness data in the Health app — other than your Medical ID — is encrypted and inaccessible by default. Additionally, if you are using iOS 12 or later and turn on two-factor authentication, Apple will not be able to read your health and activity data synced to iCloud.
The two factor authentication is the mechanism for key distribution such that HealthKit data can be synced and migrated between your own devices, without being decryptable by apple.