Does Commom Crypto library supports below key encapsulation RFC? - ios

I try to use below RFC algorithm in my app:
https://www.rfc-editor.org/rfc/rfc5990
Bouncy Castle for c# and java supports it but I am working on iOS. As I know best tools for cryptography in ios is commoncrypto library. So the question is that whether this library supports it or not?
I do not find any usefull information on documentation and hope someone here can help.

I don't see any references to it, but it should be relatively easy to implement this yourself. You can follow the code of Bouncy and implement using the misnamed SecKeyEncrypt with kSecPaddingNone. The KDF's used (KDF2 and 3) are rather simple as well.
So although I don't usually recommend implementing crypto functions, this one is relatively safe to implement as the underlying primitives are provided by the platform.

Related

Can i use Google Oboe or AAudio in iOS ? https://github.com/google/oboe

I want to use C++ library which makes it easy to build high-performance audio apps
https://github.com/google/oboe
Google Oboe seems for Android
can i somehow use it for iOS also ? or any similar alternative for iOS ?
I don't want to use Superpowered because of their licence terms!
There are no plans to release an iOS version of Oboe at present. You could look at FMOD or JUCE.
If I remember correctly (from videos of demos at events), The development of this library came from people heavily involved with the Google Android infrastructure, and thus the Oboe library is highly customized to tackle the low-latency short-comings of Android.
This being said, Google would not have the resources to tackle such an intensive and complicated problem for a completely different platform. As well (unfortunately) that wouldn't be in their best interest competitively-speaking.
I have heard of others using Superpowered, but I haven't gotten much info on it honestly, their marketing about it is all fluff, and there isn't any actual useful information, haha. I used Oboe myself, because I needed a dedicated native library.
As for iOS, I found a decent blog page that might be worth checking out: https://exceed7.com/native-audio/
This page suggests using OpenAL for objective-C/Swift. It looks like OpenAL is the similar implementation to OpenSL, which the Oboe library is partially based on. Unity seems to also utilize a library called FMOD (Not familiar with this one myself), as well DonTurner mentioned JUCE?.
So perhaps looking into these would be a good start, although I would assume using OpenAL might have some pretty involved developing, so ready your thinking cap!
Best of luck on your project!
Maybe you are looking for AudioKit
https://github.com/AudioKit/AudioKit

Swift Networking - unable to find right information about Socket programing for iOS

I want to learn in reasonable depth iOS socket programing with SWIFT.
I tried:
Apple documentation - its written for C++ and is overcomplicated (I learned Java socket programing in a week, this has so many things that are unnecessary)
Searched the forums on Stack, but looks like everyone is doing something different with CF or NS libraries.
This resource: http://swiftrien.blogspot.com/2015/10/socket-programming-in-swift-part-2.html - simply for me its overcomplicated.
Ray Wenderlich in https://www.raywenderlich.com/3932/networking-tutorial-for-ios-how-to-create-a-socket-based-iphone-app-and-server - is again doing C++ and is using 3rd party
and so on...
Is there some holly grail that has simple syntax like in Java, or am I doomed to work with some C++ things in my Swift code?
Thanks in advance.
Try looking at https://github.com/IBM-Swift/BlueSocket. This a cross platform framework for doing socket level programming in Swift.
I highly recommend you to use a socket framework to start with.
SwiftDSSocket is a framework written in pure Swift and I actively maintain this framework. It has really simple API and documents available as well as Demo.

CMAC-AES on iOS

I'm converting an Android app to iOS. The Android version uses CMAC-AES cryptography, but I couldn't find CMAC for iOS. Does anyone know a library or could give a tip? I am not familiar with cryptography, so I am little messy.
CMAC stands for Cipher-based Message Authentication Code, that means it's a message authentication code (it is used to authenticate data and avoid any corruption of the data being authenticated) that uses ciphers to achieve its goals, in your particular case it uses the AES cipher to do so.
There are indeed some libraries that you could use, you may use OpenSSL (you may try others tutorials that links OpenSSL to your project) which is a well adopted library and heavily maintened.

Is it possible to use OpenGL ES on iOS through RubyMotion?

I know RubyMotion is relatively new, but I'd like to find out if it's possible/easy to use OpenGL ES with it before I buy a license to make an iOS game I've been planning for a while.
The reason I'm wondering is that I understand RubyMotion wraps all the Cocoa/Objective-C stuff but OpenGL on iOS is a set of C functions (glBegin(), glEnd(), etc.)
If anyone that purchased RubyMotion could help me out in finding out or point me to a piece of documentation, I'd be extremely grateful. Thank you.
Yes.
They have a working demo in the RubyMotionSample project https://github.com/HipByte/RubyMotionSamples/tree/master/HelloGL
Yes, it is. The official site says so.
Interfacing with C
You do not need to be a C programmer in order to use RubyMotion, however some basic notions, explained in this section, will be required.
Objective-C is a superset of the C language. Objective-C methods can therefore accept and return C types.
Also, while Objective-C is the main programming language used in the iOS SDK, some frameworks are only available in C APIs.
RubyMotion comes with an interface that allows Ruby to deal with the C part of APIs.

Documentation of linphone (open source sip library) for iphone

Can anybody help me to find the developers documentation of linphone for iOS.
I want to understand the architecture and functionality of the project.
Thanks in advance.
I am afraid that apart from http://www.linphone.org/eng/documentation/ (that you've supposedly seen already) there is no documentation on this project. You will need to read the source code if you need more information about the architecture/etc. Since open source projects are developed very often in the author's spare time, it is quite common that they concentrate on the actual code writing instead of drawing architectural diagrams and design documents.
If you need a SIP stack for iOS I would recommend you to have a look at pjsip. It is definitely a more mature project with extensive documentation on every level.
All you need is google the function you want to check, and then there will be many documentation links. Those documentation may be different because of different versions. I think it is enough for you.
For example:
http://fossies.org/dox/linphone-3.5.2/index.html

Resources